Download the PHP package spryker-sdk/upgrader without Composer
On this page you can find all versions of the php package spryker-sdk/upgrader. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download spryker-sdk/upgrader
More information about spryker-sdk/upgrader
Files in spryker-sdk/upgrader
Package upgrader
Short Description Code evaluator and upgrader tool
License proprietary
Informations about the package upgrader
Upgrader
Upgrader
The Upgrader tool simplifies keeping projects up-to-date with Spryker releases.
The Upgrader updates projects via one of the following approaches:
- Release group(default) — uses Spryker release app as data provider.
- Composer update — uses
composer update
command; this is the default strategy that's describes below. At this step, the Upgrader updates the project to the latest version as follows:- Checks if the target branch has been created on the remote repository. If the branch exists, the process stops.
- Checks if there are no uncommitted changes in the project. If there are uncommitted changes, the process stops.
- Updates Spryker modules and dependent libraries, including third-party ones.
- Triggers Integrator for adjust project classes.
- Commits the changed files.
- Pushes the changes to the remote repository.
- Create a PR in the remote repository.
Supported strategies:
Composer strategy
- To enable Composer update strategy:
Composer update strategy
Composer install|update uses two strategies. By default Composer updates lock file with packages being downloaded.
- To enable the update of
composer.lock
file without packages being downloaded:
Release App strategy
In the strategy, Upgrader uses Spryker release app as a data provider to fetch data about Major, Minor, and Patch releases. Only Minor and Paths could be automatically applied, for now. In case when some major release is available, Upgrader put info about to PR description.
- To enable Release group strategy (default):
In the strategy, Upgrader contains sequential (default) release group requiring processor (one by one release group).
Sequential release group processor
- To enable Sequential release group processor (default):
Sequential release group processor contains threshold, by default 30 release groups for one Upgrader start.
- To change the threshold:
Soft thresholds:
Soft major threshold, by default 0.
- To change soft major threshold:
Soft minor threshold, by default 10.
- To change soft minor threshold:
Soft bugfix threshold, by default 30.
- To change soft patch threshold:
Adding GitHub configuration for the update step
To enable the Upgrader to execute this step, apply the following configuration:
- GitHub is default source code provider. If you want manually define it, use the next environment variable:
- Add a GitHub access token to the project repository with the permissions to push branches and create PRs:
- Add the organization name owning the repository of the project you want to update:
- Add the repository name of the project you want to update:
Adding GitLab configuration for the update step
To enable the Upgrader to execute this step, apply the following configuration:
- Enable GitLab source code provider:
- Add a GitLab access token to the project repository with the permissions to push branches and create PRs:
- Add the project id of the project you want to update:
- Optional. For self-hosted source provider add url of your provider:
Adding Azure configuration for the update step
To enable the Upgrader to execute this step, apply the following configuration:
- Enable Azure source code provider:
- Add a Azure access token to the project repository with the permissions to push branches and create PRs:
- Add the organization name owning the repository of the project you want to update::
- Add a project name or project id you want to update:
- Add a project's repository name or repository id:
Reporting configuration
- Optional. Defines execution environment for report statistics:
- Optional. Enable the report sending functionality. it’s disabled by default.
- Optional. Secure token for remote server request authorization in report sending process.
Updating projects via the SDK
To update a project, run the following command from its directory:
Enable release group integrator
- Turn on the specific behavior for the release group integrator (for internal usage).
Enable minimal updates of third-party dependencies
- Turn on specific behavior to minimize update 3rd-party dependencies.
Enable update features to dev-master fixer
- Turn on internal specific behavior to update features to dev-master.
Enable project change integration
- Turn on integrator trigger after package update step
Disable installing new Spryker packages
- Turn off installing new Spryker packages
Enable project code compliance after update
- Turn on code compliance trigger after package update step
Specify release group
- Specify release group to apply only it packages
Specify the pull request reviewers
- Specify the GitHub user login to add as reviewers to the pull request
Installation
For Spryker SDK installation instructions, see Spryker SDK
All versions of upgrader with dependencies
ext-json Version *
ext-simplexml Version *
composer/semver Version ^3.3
davidrjonas/composer-lock-diff Version ^1.7
ergebnis/json-printer Version ^3.2
guzzlehttp/guzzle Version ^7.8
http-interop/http-factory-guzzle Version ^1.2
knplabs/github-api Version ^3.13
m4tthumphrey/php-gitlab-api Version ^11.12
nette/neon Version ^3.4
nikic/php-parser Version 5.1.*
phpstan/phpstan Version ^1.10
spryker-sdk/azure-php-client Version ^0.2.1
spryker-sdk/integrator Version ^0.1.6
spryker-sdk/sdk-contracts Version ^0.5.0
spryker-sdk/utils Version ^0.2.2
symfony/config Version ^6.0
symfony/console Version ^6.0
symfony/dependency-injection Version ^6.0
symfony/dotenv Version ^6.0
symfony/filesystem Version ^6.0
symfony/finder Version ^6.0
symfony/framework-bundle Version ^6.0
symfony/http-kernel Version ^6.0
symfony/monolog-bundle Version ^3.10
symfony/process Version ^6.0
symfony/runtime Version ^6.0
symfony/serializer Version ^6.0
symfony/uid Version ^6.0
symfony/yaml Version ^6.0