Skip to content

Commit 8f670eb

Browse files
committed
[TMP]
1 parent e35002d commit 8f670eb

File tree

1 file changed

+25
-187
lines changed

1 file changed

+25
-187
lines changed

.buildkite/pipeline-raw.yml

+25-187
Original file line numberDiff line numberDiff line change
@@ -37,201 +37,39 @@ steps:
3737
- cd tests/bottle-hashes/
3838
- ./test-hash-insert.sh
3939

40-
- label: build via nix
41-
commands:
42-
# NOTE: if this changes, remember to update the instructions in the nix/README.md too
43-
- nix build . -o binaries
44-
branches: "!master"
45-
- label: check flake
46-
commands:
47-
- nix flake check -L
48-
branches: "!master"
49-
# nix builds are usually cached, so we don't care about only_changes setting for it
50-
51-
- label: build-via-docker
52-
# this step is used as a dependency, so we're defining 'key' explicitely
53-
key: build-via-docker
40+
- label: Build Monterey x86_64 bottles
41+
key: build-bottles-monterey-x86_64
42+
agents:
43+
queue: "x86_64-rosetta-darwin"
5444
commands:
55-
- eval "$SET_VERSION"
56-
- cd docker
57-
- ./docker-static-build.sh
45+
- rm -rf /Users/serokell/Library/Caches/Homebrew/downloads/b3050b8d1d2bbd786c485462d44befe07e66eb214a3b8a7da232afd40209160d--protobuf-28.2.tar.gz
46+
- nix develop .#autorelease-macos -c ./scripts/build-all-bottles.sh "monterey"
5847
artifact_paths:
59-
- ./docker/octez-*
60-
only_changes: &static_binaries_changes_regexes
61-
- docker/build/.*.sh
62-
- docker/build/Dockerfile
63-
- docker/docker-static-build.sh
64-
- meta.json
65-
- protocols.json
48+
- '*.bottle.*'
49+
retry:
50+
automatic:
51+
limit: 1
6652

67-
- label: build-arm-via-docker
68-
# this step is used as a dependency, so we're defining 'key' explicitely
69-
key: build-arm-via-docker
70-
commands:
71-
- eval "$SET_VERSION"
72-
- cd docker
73-
- ./docker-static-build.sh
74-
- >
75-
for f in ./octez-*; do
76-
mv "\$f" "\$f-arm64"
77-
done
78-
artifact_paths:
79-
- ./docker/octez-*
53+
- label: Build Monterey arm64 bottles
54+
key: build-bottles-monterey-arm64
8055
agents:
8156
queue: "arm64-darwin"
82-
only_changes: *static_binaries_changes_regexes
83-
84-
- label: test docker-built binaries
85-
commands:
86-
- buildkite-agent artifact download "docker/*" . --step "build-via-docker"
87-
- chmod +x ./docker/*
88-
- nix-build . -A binaries-test --no-out-link --arg path-to-binaries ./docker
89-
branches: "!master"
90-
depends_on:
91-
- "build-via-docker"
92-
only_changes:
93-
- tests/tezos-binaries.nix
94-
- tests/test_script.py
95-
# files from nix/ are massively used in tests infrastructure
96-
- nix/.*
97-
98-
- label: test deb source packages via docker
99-
commands:
100-
- eval "$SET_VERSION"
101-
- nix develop .#docker-tezos-packages -c ./docker/build/ubuntu/build.py --type source
102-
artifact_paths:
103-
- ./out/*
104-
branches: "!master"
105-
timeout_in_minutes: 60
106-
only_changes: &ubuntu_native_packaging_changes_regexes
107-
- docker/package/.*
108-
- docker/build/ubuntu/build.py
109-
- docker/build/util/build.py
110-
- docker/baking/.*
111-
- meta.json
112-
- protocols.json
113-
114-
- label: test deb binary packages via docker
115-
commands:
116-
- eval "$SET_VERSION"
117-
# Building all binary packages will take significant amount of time, so we build only one
118-
# in order to ensure package generation sanity
119-
- nix develop .#docker-tezos-packages -c ./docker/build/ubuntu/build.py --type binary -p tezos-baker-PsParisC
120-
- rm -rf out
121-
# It takes much time to build binary package, so we do it only on master
122-
branches: "master"
123-
timeout_in_minutes: 240
124-
only_changes: *ubuntu_native_packaging_changes_regexes
125-
126-
- label: test rpm source packages via docker
12757
commands:
128-
- eval "$SET_VERSION"
129-
- nix develop .#docker-tezos-packages -c ./docker/build/fedora/build.py --type source
58+
- nix develop .#autorelease-macos -c ./scripts/build-all-bottles.sh "arm64_monterey"
13059
artifact_paths:
131-
- ./out/*
132-
branches: "!master"
133-
timeout_in_minutes: 60
134-
only_changes: &fedora_native_packaging_changes_regexes
135-
- docker/package/.*
136-
- docker/build/fedora/build.py
137-
- docker/build/util/build.py
138-
- docker/baking/.*
139-
- meta.json
140-
- protocols.json
141-
142-
- label: test rpm binary packages via docker
143-
commands:
144-
- eval "$SET_VERSION"
145-
# Building all binary packages will take significant amount of time, so we build only one
146-
# in order to ensure package generation sanity
147-
- nix develop .#docker-tezos-packages -c ./docker/build/fedora/build.py --type binary -p tezos-baker-PsParisC
148-
- rm -rf out
149-
# It takes much time to build binary package, so we do it only on master
150-
branches: "master"
151-
timeout_in_minutes: 180
152-
only_changes: *fedora_native_packaging_changes_regexes
153-
154-
- label: build deb packages with static binaries
155-
key: build-static-deb
156-
depends_on:
157-
- "build-via-docker"
158-
commands:
159-
- eval "$SET_VERSION"
160-
- buildkite-agent artifact download "docker/octez-*" . --step build-via-docker
161-
- nix develop .#docker-tezos-packages -c ./docker/build/ubuntu/build.py --type binary --binaries-dir docker --distributions focal
162-
artifact_paths:
163-
- ./out/*
164-
only_changes: *ubuntu_native_packaging_changes_regexes
165-
166-
- label: test gen_systemd_service_file.py script
167-
commands:
168-
- eval "$SET_VERSION"
169-
- nix develop .#autorelease -c ./gen_systemd_service_file.py tezos-node
170-
branches: "!master"
171-
only_changes:
172-
- gen_systemd_service_file.py
173-
- docker/package/.*
174-
175-
- label: test bundled systemd services
176-
# Used in .buildkite/hooks/pre-exit
177-
key: test-systemd-services
178-
depends_on:
179-
- "build-static-deb"
180-
only_changes:
181-
- :<< *ubuntu_native_packaging_changes_regexes
182-
- tests/systemd/.*
183-
agents:
184-
queue: "default"
185-
commands:
186-
- buildkite-agent artifact download "out/*~focal_amd64.deb" . --step build-static-deb
187-
- cd tests/systemd
188-
- nix shell ../..#legacyPackages.x86_64-linux.vagrant ../..#legacyPackages.x86_64-linux.curl -c vagrant --packages-directory=../../out up --provider=libvirt
60+
- '*.bottle.*'
18961
retry:
19062
automatic:
191-
limit: 3
63+
limit: 1
19264

193-
- label: create auto release/pre-release
194-
key: auto-release
195-
commands:
196-
- mkdir binaries
197-
- mkdir arm-binaries
198-
- buildkite-agent artifact download "docker/*" binaries --step "build-via-docker"
199-
- buildkite-agent artifact download "docker/*" arm-binaries --step "build-arm-via-docker"
200-
- ls binaries
201-
- nix develop .#autorelease -c ./scripts/autorelease.sh "$BUILDKITE_MESSAGE"
202-
branches: master
65+
# We use the tag that triggered the pipeline here.
66+
# However, this requires that the tag and the release name are the same, which
67+
# in practice it's always the case in this repo.
68+
- label: Add Monterey bottle hashes to formulae
20369
depends_on:
204-
- "build-via-docker"
205-
- "build-arm-via-docker"
206-
only_changes:
207-
- scripts/autorelease.sh
208-
- scripts/shell.nix
209-
# files from 'nix/' directory are used in the autorelease script
210-
- nix/.*
211-
- tezos-release.nix
212-
- release.nix
213-
214-
# Update mirror repositories on master if brew formulae have been updated or bottle hashes added
215-
- label: update stable mirror repository
216-
if: |
217-
build.branch == "master" &&
218-
( build.message =~ /^Merge pull request .* from serokell\/auto\/v[0-9]+\.[0-9]+-release/ ||
219-
build.message =~ /^Merge pull request .* from serokell\/auto\/update-brew-formulae-v[.0-9]+-[0-9]+/ )
220-
depends_on:
221-
- "auto-release"
222-
env:
223-
MIRROR_REPO: "[email protected]:serokell/tezos-packaging-stable.git"
224-
commands: &update_mirror
225-
- git pull origin "$BUILDKITE_BRANCH:$BUILDKITE_BRANCH"
226-
- git push --mirror "$$MIRROR_REPO"
227-
228-
- label: update RC mirror repository
229-
if: |
230-
build.branch == "master" &&
231-
(build.message =~ /^Merge pull request .* from serokell\/auto\/v[0-9]+\.[0-9]+-(rc|beta).*-release/ ||
232-
build.message =~ /^Merge pull request .* from serokell\/auto\/update-brew-formulae-v[.0-9]+-(rc|beta).*/)
233-
depends_on:
234-
- "auto-release"
235-
env:
236-
MIRROR_REPO: "[email protected]:serokell/tezos-packaging-rc.git"
237-
commands: *update_mirror
70+
- "build-bottles-monterey-arm64"
71+
- "build-bottles-monterey-x86_64"
72+
commands:
73+
- mkdir -p "Monterey"
74+
- nix develop .#buildkite -c gh release download "v20.3-1" -D "Monterey/" -p "*monterey.bottle.tar.gz"
75+
- nix develop .#autorelease -c ./scripts/sync-bottle-hashes.sh "v20.3-1" "Monterey"

0 commit comments

Comments
 (0)