Skip to content

Pushing sequential packages doesn't show the name of a package currently being deployed #1731

Closed

Description

@pznmc

Is your feature request related to a problem? Please describe.
Deploying a large number of packages can take a long time. Using pushPackageDirectoriesSequentially set to true makes all packages to be deployed one by one. When we have more than 40 packages inside sfdx-project.json, it's easy to get lost which package is currently being deployed.

What are you trying to do
I would like to see the name of a package currently being deployed.

Describe the solution you'd like
Instead of seeing the following console output:

*** Pushing with SOAP API v54.0 ***
DEPLOY PROGRESS | ████████████████████████████████████████ | 251/251 Components
*** Pushing with SOAP API v54.0 ***
DEPLOY PROGRESS | ████████████████████████████████████████ | 3453/3453 Components
*** Pushing with SOAP API v54.0 ***
DEPLOY PROGRESS | ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ | 0/2345 Components

I would like to see this for example:

*** Pushing pkg-x with SOAP API v54.0 ***
DEPLOY PROGRESS | ████████████████████████████████████████ | 251/251 Components
*** Pushing pkg-y with SOAP API v54.0 ***
DEPLOY PROGRESS | ████████████████████████████████████████ | 3453/3453 Components
*** Pushing pkg-z with SOAP API v54.0 ***
DEPLOY PROGRESS | ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ | 0/2345 Components

Describe alternatives you've considered
I can only wait & count packages, which one is currently deployed, and compare it with order in a sfdx-project.json file.

Activity

  1. added
    featureIssue or pull request for a new feature
    on Sep 29, 2022
  2. github-actions commented on Sep 29, 2022

    @github-actions

    Thank you for filing this feature request. We appreciate your feedback and will review the feature at our next grooming or sprint planning session. We prioritize feature requests with more upvotes and comments.

  3. git2gus commented on Sep 29, 2022

    @git2gus

    This issue has been linked to a new work item: W-11831731

  4. cristiand391 commented on Nov 10, 2022

    @cristiand391
    Contributor

    Marking this as help wanted in case you or anyone else wants to add this feature.

    How I see this should work:

    1st scenario: no pushPackageDirectoriesSequentially defined, only one pkg:

    nothing changes, you know there's only one pkg to deploy.

    2nd scenario: pushPackageDirectoriesSequentially is set to true, multiple pkg will be deployed:

    the output should look like what @pznmc suggest so it's clear to the user which pkg is being deployed:

    *** Pushing pkg-x with SOAP API v54.0 ***
    DEPLOY PROGRESS | ████████████████████████████████████████ | 251/251 Components
    *** Pushing pkg-y with SOAP API v54.0 ***
    DEPLOY PROGRESS | ████████████████████████████████████████ | 3453/3453 Components
    *** Pushing pkg-z with SOAP API v54.0 ***
    DEPLOY PROGRESS | ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ | 0/2345 Components
    

    technical details

    There's a variable in force:source:push to detect if it's doing a sequential deploy, use it to detect which msg to render:
    https://github.com/salesforcecli/plugin-source/blob/main/src/commands/force/source/push.ts#L80

    you'll need to update the getVersionMessage func to accept a pkg name (string) as an argument and return the correct msg:
    https://github.com/salesforcecli/plugin-source/blob/main/src/commands/force/source/push.ts#L108
    https://github.com/salesforcecli/plugin-source/blob/main/src/deployCommand.ts#L234

    Also use this.project.getSfProjectJson().getUniquePackageNames() to get the pkg names in the order they are defined.

    The library that deploys the source returns a "Component Set` of metadata per pkg, the order of the component sets returned will be the same as you have pkgs defined in the project so you can rely on that to assign the each pkg name to a component set here
    https://github.com/salesforcecli/plugin-source/blob/main/src/commands/force/source/push.ts#L90

    1st componentSet corresponds to the 1st pkg returned by getUniquePackageNames(), etc.

    feel free to post here if you have any questions.

  5. locked and limited conversation to collaborators on Jun 26, 2023
  6. converted this issue into a discussion #2264 on Jun 26, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    featureIssue or pull request for a new featurehelp wantedHelp wanted to implement this issue

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions