Skip to content

Commit 841de8a

Browse files
committed
Merge remote-tracking branch 'origin/master' into extrema
2 parents 360b346 + e37e290 commit 841de8a

File tree

2,064 files changed

+104572
-51247
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

2,064 files changed

+104572
-51247
lines changed

.appveyor.yml

Lines changed: 0 additions & 65 deletions
This file was deleted.

.buildkite/README.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# Buildkite
2+
3+
This directory contains the Buildkite configuration files for Base Julia CI.
4+
5+
The rootfs image definitions are located in the [rootfs-images](https://github.com/JuliaCI/rootfs-images) repository.
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
## Cryptic repository keys
2+
3+
This folder contains RSA-encrypted symmetric AES keys.
4+
These are used by buildkite agents to decrypt the secrets embedded within this repository.
5+
Each buildkite agent contains an RSA secret key that is used to unlock the symmetric AES key that was used to encrypt the secrets within this repository.
6+
For more information, see the [`cryptic` buildkite plugin repository](https://github.com/staticfloat/cryptic-buildkite-plugin).
256 Bytes
Binary file not shown.
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# This file represents what is put into the webUI.
2+
# It is purely for keeping track of the changes we make to the webUI configuration; modifying this file has no effect.
3+
# We use the `cryptic` buildkite plugin to provide secrets management, which requires some integration into the WebUI's steps.
4+
agents:
5+
queue: "julia"
6+
sandbox.jl: "true"
7+
8+
steps:
9+
- label: ":unlock: Unlock secrets, launch pipelines"
10+
plugins:
11+
- staticfloat/cryptic:
12+
# Our list of pipelines that should be launched (but don't require a signature)
13+
# These pipelines can be modified by any contributor and CI will still run.
14+
# Build secrets will not be available in these pipelines (or their children)
15+
# but some of our signed pipelines can wait upon the completion of these unsigned
16+
# pipelines.
17+
unsigned_pipelines:
18+
- .buildkite/pipelines/experimental/launch_unsigned_builders.yml
19+
20+
# Our signed pipelines must have a `signature` or `signature_file` parameter that
21+
# verifies the treehash of the pipeline itself and the inputs listed in `inputs`
22+
# signed_pipelines:
23+
# - pipeline: .buildkite/pipelines/experimental/misc/foo_bar_baz.yml
24+
# signature: "my_signature"
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
## Experimental pipeline (`master` branch only)
2+
3+
This is the [`julia-master->experimental`](https://buildkite.com/julialang/julia-master-experimental) pipeline.
4+
5+
We use this pipeline for builders that are not yet stable enough to go into the main pipeline.
6+
7+
These builders are triggered by GitHub webhook events, such as pushes and pull requests.
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
steps:
2+
- label: ":buildkite: Launch unsigned pipelines"
3+
commands: |
4+
buildkite-agent pipeline upload .buildkite/pipelines/experimental/misc/sanitizers.yml
5+
agents:
6+
queue: julia
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
agents:
2+
queue: "julia"
3+
# Only run on `sandbox.jl` machines (not `docker`-isolated ones) since we need nestable sandboxing
4+
sandbox.jl: "true"
5+
os: "linux"
6+
7+
steps:
8+
- label: "asan"
9+
key: asan
10+
plugins:
11+
- JuliaCI/julia#v1:
12+
version: 1.6
13+
- staticfloat/sandbox#v1:
14+
rootfs_url: https://github.com/JuliaCI/rootfs-images/releases/download/v3.1/llvm_passes.x86_64.tar.gz
15+
rootfs_treehash: "9dd715500b117a16fcfa419ea0bca0c0ca902cee"
16+
uid: 1000
17+
gid: 1000
18+
workspaces:
19+
- "/cache/repos:/cache/repos"
20+
# `contrib/check-asan.jl` needs a `julia` binary:
21+
- JuliaCI/julia#v1:
22+
version: 1.6
23+
commands: |
24+
echo "--- Build julia-debug with ASAN"
25+
contrib/asan/build.sh ./tmp/test-asan -j$${JULIA_NUM_CORES} debug
26+
echo "--- Test that ASAN is enabled"
27+
contrib/asan/check.jl ./tmp/test-asan/asan/usr/bin/julia-debug
28+
timeout_in_minutes: 120
29+
# notify: # TODO: uncomment this line
30+
# - github_commit_status: # TODO: uncomment this line
31+
# context: "asan" # TODO: uncomment this line

.buildkite/pipelines/main/0_webui.yml

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# This file represents what is put into the webUI.
2+
# It is purely for keeping track of the changes we make to the webUI configuration; modifying this file has no effect.
3+
# We use the `cryptic` buildkite plugin to provide secrets management, which requires some integration into the WebUI's steps.
4+
agents:
5+
queue: "julia"
6+
sandbox.jl: "true"
7+
8+
steps:
9+
- label: ":unlock: Unlock secrets, launch pipelines"
10+
plugins:
11+
- staticfloat/cryptic:
12+
# Our list of pipelines that should be launched (but don't require a signature)
13+
# These pipelines can be modified by any contributor and CI will still run.
14+
# Build secrets will not be available in these pipelines (or their children)
15+
# but some of our signed pipelines can wait upon the completion of these unsigned
16+
# pipelines.
17+
unsigned_pipelines:
18+
- .buildkite/pipelines/main/launch_unsigned_builders.yml
19+
20+
# Our signed pipelines must have a `signature` or `signature_file` parameter that
21+
# verifies the treehash of the pipeline itself and the inputs listed in `inputs`
22+
signed_pipelines:
23+
- pipeline: .buildkite/pipelines/main/misc/signed_pipeline_test.yml
24+
signature_file: .buildkite/pipelines/main/misc/signed_pipeline_test.yml.signature

.buildkite/pipelines/main/README.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
## Main pipeline
2+
3+
This is the main pipeline. It contains most of the builders. These builders are triggered by GitHub webhook events, such as pushes and pull requests.
4+
5+
We have a different main pipeline for each permanent branch.
6+
7+
For example:
8+
9+
| Permanent Branch | Pipeline |
10+
| ---------------- | -------------------------------------------------------------------------------- |
11+
| `master` | [`julia-master`](https://buildkite.com/julialang/julia-master) |
12+
| `release-1.6` | [`julia-release-1.6`](https://buildkite.com/julialang/julia-release-1-dot-6) |
13+
| `release-1.7` | [`julia-release-1.7`](https://buildkite.com/julialang/julia-release-1-dot-7) |
14+
15+
(This is not a complete list.)

0 commit comments

Comments
 (0)