-
Notifications
You must be signed in to change notification settings - Fork 24
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
travis-ci: deploy RPM / Deb packages #162
travis-ci: deploy RPM / Deb packages #162
Conversation
a8cd34c
to
b7de22b
Compare
Filed several issues re update_repo.sh during working on this PR: tarantool/tarantool#5096 |
b7de22b
to
5f50bd1
Compare
5f50bd1
to
5d16e04
Compare
a0e115c
to
0d3a227
Compare
Now php-tarantool packages are deployed into two kinds of repositories: packagecloud.io and to S3 based ones. The download.tarantool.org now points to the latter, but we keep packagecloud.io for a while to don't break users, which use it directly (we don't recommend it though). See [1] for more info about deprecation of our packagecloud.io repositories. The deployment scripts allows to provide two configurations: production and staging. The former is for deployment from the master branch and from a git tag. The latter is for deployments from a developer branch. It is useful when something should be verified in a specific environment using a built package or when the deployment process itself was modified and should be tested. The difference between production and staging deployment process is how duplicate package versions are handled. It give an error for production deployment, but does not for staging. The new package is discarded in the case for packagecloud.io, but it replaces the old package in S3 repositories. Read comments in the deployment scripts for more details. [1]: tarantool/tarantool#4947 Fixes #117
0d3a227
to
40100b7
Compare
Implemented automatic fetching of a repositories list to push into for both packagecloud and S3 based repositories. Possible further features:
It seems logical to rewrite it from shell to some readable language and move it to packpack tools. I have no time for this now, to be honest. The initial plan was to create a simple wrapper around |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The patch LGTM, just interesting why didn't you use the travis-ci deploy internal routine.
There are several reasons, but all of them comes from problems we met with Travis-CI packagecloud deploy script.
To sum up: this way appears to be much more flexible and allows us to solve several existing problems. |
Now php-tarantool packages are deployed into two kinds of repositories:
packagecloud.io and to S3 based ones. The download.tarantool.org now
points to the latter, but we keep packagecloud.io for a while to don't
break users, which use it directly (we don't recommend it though). See
1 for more info about deprecation of our packagecloud.io repositories.
The deployment scripts allows to provide two configurations: production
and staging. The former is for deployment from the master branch and
from a git tag. The latter is for deployments from a developer branch.
It is useful when something should be verified in a specific environment
using a built package or when the deployment process itself was modified
and should be tested.
The difference between production and staging deployment process is how
duplicate package versions are handled. It give an error for production
deployment, but does not for staging. The new package is discarded in
the case for packagecloud.io, but it replaces the old package in S3
repositories.
Read comments in the deployment scripts for more details.
Fixes #117