Skip to content

Commit

Permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Try grouping packaging jobs
Browse files Browse the repository at this point in the history
staticfloat committed Mar 4, 2022
1 parent a224a08 commit b694dfa
Showing 3 changed files with 57 additions and 48 deletions.
12 changes: 9 additions & 3 deletions pipelines/main/launch_unsigned_builders.yml
Original file line number Diff line number Diff line change
@@ -25,9 +25,15 @@ steps:
#buildkite-agent pipeline upload .buildkite/pipelines/main/misc/llvmpasses.yml
#buildkite-agent pipeline upload .buildkite/pipelines/main/misc/sanitizers.yml
# Launch all of the platform jobs.
bash .buildkite/utilities/arches_pipeline_upload.sh .buildkite/pipelines/main/platforms/package_linux.arches .buildkite/pipelines/main/platforms/package_linux.yml
bash .buildkite/utilities/arches_pipeline_upload.sh .buildkite/pipelines/main/platforms/test_linux.arches .buildkite/pipelines/main/platforms/test_linux.yml
# Launch all of the packaging jobs
bash .buildkite/utilities/arches_pipeline_upload.sh \
.buildkite/pipelines/main/platforms/package_linux.arches \
.buildkite/pipelines/main/platforms/package_linux.yml
# Launch all of the testing jobs
bash .buildkite/utilities/arches_pipeline_upload.sh \
.buildkite/pipelines/main/platforms/test_linux.arches \
.buildkite/pipelines/main/platforms/test_linux.yml
# Launch the `whitespace` job last. Uploading it last actually causes it to start
# first. We want this job to start first because we want it to finish as quickly
91 changes: 47 additions & 44 deletions pipelines/main/platforms/package_linux.yml
Original file line number Diff line number Diff line change
@@ -4,53 +4,56 @@ agents:
sandbox.jl: "true"
os: "linux"
steps:
- label: ":linux: package ${TRIPLET?}"
key: "package_${TRIPLET?}"
plugins:
- JuliaCI/external-buildkite#v1:
version: ".buildkite-external-version"
repo_url: "https://github.com/JuliaCI/julia-buildkite"
- JuliaCI/julia#v1:
# Drop default "registries" directory, so it is not persisted from execution to execution
persist_depot_dirs: packages,artifacts,compiled
version: '1.6'
- staticfloat/sandbox#v1:
rootfs_url: https://github.com/JuliaCI/rootfs-images/releases/download/${ROOTFS_TAG?}/package_${OS?}.${ARCH_ROOTFS?}.tar.gz
rootfs_treehash: "${ROOTFS_HASH?}"
uid: 1000
gid: 1000
workspaces:
# Include `/cache/repos` so that our `git` version introspection works.
- "/cache/repos:/cache/repos"
timeout_in_minutes: ${TIMEOUT?}
commands: |
# First, get things like `LONG_COMMIT` and `SHORT_COMMIT`, etc...
TAR_ARCH=${TAR_ARCH?} OS=${OS?} MAKE_FLAGS=${MAKE_FLAGS?} source .buildkite/utilities/calc_version_envs.sh
- group: ":package: Packaging"
key: "package"
steps:
- label: ":linux: package ${TRIPLET?}"
key: "package_${TRIPLET?}"
plugins:
- JuliaCI/external-buildkite#v1:
version: ".buildkite-external-version"
repo_url: "https://github.com/JuliaCI/julia-buildkite"
- JuliaCI/julia#v1:
# Drop default "registries" directory, so it is not persisted from execution to execution
persist_depot_dirs: packages,artifacts,compiled
version: '1.6'
- staticfloat/sandbox#v1:
rootfs_url: https://github.com/JuliaCI/rootfs-images/releases/download/${ROOTFS_TAG?}/package_${OS?}.${ARCH_ROOTFS?}.tar.gz
rootfs_treehash: "${ROOTFS_HASH?}"
uid: 1000
gid: 1000
workspaces:
# Include `/cache/repos` so that our `git` version introspection works.
- "/cache/repos:/cache/repos"
timeout_in_minutes: ${TIMEOUT?}
commands: |
# First, get things like `LONG_COMMIT` and `SHORT_COMMIT`, etc...
TAR_ARCH=${TAR_ARCH?} OS=${OS?} MAKE_FLAGS=${MAKE_FLAGS?} source .buildkite/utilities/calc_version_envs.sh
echo "--- Build Julia from source"
rm -rf $${ARTIFACT_FILENAME}
make --output-sync -j 8 ${MAKE_FLAGS?}
echo "--- Build Julia from source"
rm -rf $${ARTIFACT_FILENAME}
make --output-sync -j 8 ${MAKE_FLAGS?}
echo "--- Check that the working directory is clean"
if [ -z "$(git status --short)" ]; then
echo "INFO: The working directory is clean."
else
echo "ERROR: The working directory is dirty."
echo "Output of git status:"
git status
exit 1
fi
echo "--- Check that the working directory is clean"
if [ -z "$(git status --short)" ]; then
echo "INFO: The working directory is clean."
else
echo "ERROR: The working directory is dirty."
echo "Output of git status:"
git status
exit 1
fi
echo "--- Print Julia version info"
./julia -e 'using InteractiveUtils; InteractiveUtils.versioninfo()'
echo "--- Print Julia version info"
./julia -e 'using InteractiveUtils; InteractiveUtils.versioninfo()'
echo "--- Create build artifacts"
make --output-sync -j 8 binary-dist ${MAKE_FLAGS?}
echo "--- Create build artifacts"
make --output-sync -j 8 binary-dist ${MAKE_FLAGS?}
# Rename the build artifact in case we want to name it differently, as is the case on `musl`.
if [[ "$${JULIA_BINARYDIST}" != "$${ARTIFACT_FILENAME}" ]]; then
mv $${JULIA_BINARYDIST} $${ARTIFACT_FILENAME}
fi
# Rename the build artifact in case we want to name it differently, as is the case on `musl`.
if [[ "$${JULIA_BINARYDIST}" != "$${ARTIFACT_FILENAME}" ]]; then
mv $${JULIA_BINARYDIST} $${ARTIFACT_FILENAME}
fi
echo "--- Upload build artifacts"
buildkite-agent artifact upload $${ARTIFACT_FILENAME}
echo "--- Upload build artifacts"
buildkite-agent artifact upload $${ARTIFACT_FILENAME}
2 changes: 1 addition & 1 deletion pipelines/main/platforms/upload_linux.yml
Original file line number Diff line number Diff line change
@@ -20,7 +20,7 @@ steps:
version: '1.6'
- staticfloat/sandbox#v1:
rootfs_url: https://github.com/JuliaCI/rootfs-images/releases/download/v5.1/aws_uploader.x86_64.tar.gz
rootfs_treehash: "65becc21c66b853a6057410109a660aafab1a755"
rootfs_treehash: "f865a3a68e33de10b3b4c9c5d0c9e5f2ff5a6965"
uid: 1000
gid: 1000
timeout_in_minutes: ${TIMEOUT?}

0 comments on commit b694dfa

Please sign in to comment.