Browse Source
Do not use pipes for building & uploading packages because: * They spawn more jobs on Bintray for metadata generation - each upload is done in a separate session. * Bintray doesn't handle well concurrent uploads and metadata can be corrupted. This happened in all recent builds of platform independent packages - in each upload task file had a same name and that triggered problem with metadata. * Using delays for workaround for a problem described above works, but isn't safe.emacs-27
Leonid Plyushch
6 years ago
2 changed files with 99 additions and 120 deletions
@ -1,80 +1,42 @@ |
|||
container: |
|||
image: termux/package-builder:latest |
|||
cpu: 8 |
|||
memory: 16 |
|||
|
|||
## |
|||
## * Maximal timeout is 120 minutes. |
|||
## * Each architecture require a separate pipe configuration. |
|||
## * Test builds (i.e. non-uploadable) are done via separate task. |
|||
## |
|||
|
|||
build_pipe_template: &BUILD_PIPE_TEMPLATE |
|||
only_if: $CIRRUS_BRANCH == 'master' |
|||
task: |
|||
name: Build |
|||
|
|||
# 2 hours is a maximal timeout available for free use. |
|||
timeout_in: 120m |
|||
|
|||
environment: |
|||
BINTRAY_USERNAME: xeffyr |
|||
BINTRAY_API_KEY: ENCRYPTED[c056d345d7a15f90b818dd9382129c27ce4ce2b802831ec890786414fc214c4203714c353a8fef3a6b9b1b1d68e4685e] |
|||
BINTRAY_GPG_SUBJECT: termux |
|||
BINTRAY_GPG_PASSPHRASE: ENCRYPTED[854c09c78b3318a30d3c9094b1010dfebd4c71ad9173b64479eaafaa7e941b050afaa936ad635af3709382492828316f] |
|||
|
|||
steps: |
|||
- image: termux/package-builder:latest |
|||
build_script: bash ./scripts/build/ci/cirrus-ci_dispatcher.sh |
|||
- image: termux/package-builder:latest |
|||
upload_script: bash ./scripts/build/ci/cirrus-ci_dispatcher.sh --upload |
|||
output_artifacts: |
|||
path: "./debs/*.deb" |
|||
|
|||
|
|||
pipe: |
|||
<< : *BUILD_PIPE_TEMPLATE |
|||
name: Build and Upload - aarch64 |
|||
environment: |
|||
matrix: |
|||
TERMUX_ARCH: aarch64 |
|||
UPLOAD_DELAY: 0 |
|||
|
|||
pipe: |
|||
<< : *BUILD_PIPE_TEMPLATE |
|||
name: Build and Upload - arm |
|||
environment: |
|||
TERMUX_ARCH: arm |
|||
UPLOAD_DELAY: 20 |
|||
|
|||
pipe: |
|||
<< : *BUILD_PIPE_TEMPLATE |
|||
name: Build and Upload - i686 |
|||
environment: |
|||
TERMUX_ARCH: i686 |
|||
UPLOAD_DELAY: 40 |
|||
|
|||
pipe: |
|||
<< : *BUILD_PIPE_TEMPLATE |
|||
name: Build and Upload - x86_64 |
|||
environment: |
|||
TERMUX_ARCH: x86_64 |
|||
UPLOAD_DELAY: 60 |
|||
|
|||
build_script: | |
|||
bash ./scripts/build/ci/cirrus-ci_dispatcher.sh |
|||
|
|||
output_artifacts: |
|||
path: "./debs/*.deb" |
|||
|
|||
task: |
|||
name: Test build |
|||
name: Publish |
|||
|
|||
only_if: $CIRRUS_BRANCH != 'master' |
|||
only_if: $CIRRUS_BRANCH == 'master' |
|||
|
|||
timeout_in: 120m |
|||
timeout_in: 60m |
|||
|
|||
container: |
|||
image: termux/package-builder:latest |
|||
depends_on: |
|||
- Build |
|||
|
|||
environment: |
|||
matrix: |
|||
TERMUX_ARCH: aarch64 |
|||
TERMUX_ARCH: arm |
|||
TERMUX_ARCH: i686 |
|||
TERMUX_ARCH: x86_64 |
|||
|
|||
build_script: bash ./scripts/build/ci/cirrus-ci_dispatcher.sh |
|||
BINTRAY_USERNAME: xeffyr |
|||
BINTRAY_API_KEY: ENCRYPTED[c056d345d7a15f90b818dd9382129c27ce4ce2b802831ec890786414fc214c4203714c353a8fef3a6b9b1b1d68e4685e] |
|||
BINTRAY_GPG_SUBJECT: termux |
|||
BINTRAY_GPG_PASSPHRASE: ENCRYPTED[854c09c78b3318a30d3c9094b1010dfebd4c71ad9173b64479eaafaa7e941b050afaa936ad635af3709382492828316f] |
|||
|
|||
output_artifacts: |
|||
path: "./debs/*.deb" |
|||
upload_script: | |
|||
bash ./scripts/build/ci/cirrus-ci_dispatcher.sh --upload |
|||
|
Loading…
Reference in new issue