Skip to content

Commit 7c0aed1

Browse files
committed
ci: split containers_ci.yml to docker_alpine.yml and docker_ubuntu.yml, so that restarting the flakier alpine job will not have to stop/cancel the slower but more robust ubuntu musl job
1 parent 1e3d382 commit 7c0aed1

File tree

3 files changed

+108
-88
lines changed

3 files changed

+108
-88
lines changed

.github/workflows/containers_ci.yml

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

.github/workflows/docker_alpine.yml

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
name: Docker Alpine MUSL CI
2+
3+
on:
4+
push:
5+
paths-ignore:
6+
- "**.md"
7+
- "**.yml"
8+
pull_request:
9+
paths-ignore:
10+
- "**.md"
11+
- "**.yml"
12+
13+
concurrency:
14+
group: docker-alpine-musl-${{ github.event.pull_request.number || github.sha }}
15+
cancel-in-progress: true
16+
17+
jobs:
18+
alpine-docker-musl-gcc:
19+
runs-on: ubuntu-20.04
20+
if: >
21+
github.event_name != 'push'
22+
|| github.event.ref == 'refs/heads/master'
23+
|| github.event.repository.full_name != 'vlang/v'
24+
timeout-minutes: 241
25+
container:
26+
image: thevlang/vlang:alpine-build
27+
env:
28+
V_CI_MUSL: 1
29+
VFLAGS: -cc gcc
30+
volumes:
31+
- ${{github.workspace}}:/opt/vlang
32+
33+
steps:
34+
- name: Checkout
35+
uses: actions/checkout@v3
36+
37+
- name: Show Environment
38+
run: |
39+
echo "PWD:"
40+
pwd
41+
echo "ENVIRONMENT:"
42+
env
43+
echo "C Compiler:"
44+
gcc --version
45+
46+
- name: Add dependencies
47+
run: |
48+
apk add libc6-compat
49+
50+
- name: Build V
51+
run: CC=gcc make
52+
53+
- name: All code is formatted
54+
run: VJOBS=1 ./v test-cleancode
55+
56+
- name: Run only essential tests
57+
run: VTEST_JUST_ESSENTIAL=1 ./v test-self

.github/workflows/docker_ubuntu.yml

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
name: Docker Ubuntu MUSL CI
2+
3+
on:
4+
push:
5+
paths-ignore:
6+
- "**.md"
7+
- "**.yml"
8+
pull_request:
9+
paths-ignore:
10+
- "**.md"
11+
- "**.yml"
12+
13+
concurrency:
14+
group: docker-ubuntu-musl-${{ github.event.pull_request.number || github.sha }}
15+
cancel-in-progress: true
16+
17+
jobs:
18+
ubuntu-docker-musl:
19+
runs-on: ubuntu-20.04
20+
if: >
21+
github.event_name != 'push'
22+
|| github.event.ref == 'refs/heads/master'
23+
|| github.event.repository.full_name != 'vlang/v'
24+
timeout-minutes: 121
25+
container:
26+
image: thevlang/vlang:ubuntu-build
27+
env:
28+
V_CI_MUSL: 1
29+
V_CI_UBUNTU_MUSL: 1
30+
VFLAGS: -cc musl-gcc -gc none
31+
volumes:
32+
- ${{github.workspace}}:/opt/vlang
33+
34+
steps:
35+
- name: Checkout
36+
uses: actions/checkout@v3
37+
38+
- name: Build V
39+
run: |
40+
echo $VFLAGS && make -j4 && ./v -cg -o v cmd/v
41+
- name: Verify `v test` works
42+
run: |
43+
echo $VFLAGS
44+
./v cmd/tools/test_if_v_test_system_works.v
45+
./cmd/tools/test_if_v_test_system_works
46+
47+
- name: All code is formatted
48+
run: ./v test-cleancode
49+
50+
- name: Test V fixed tests
51+
run: ./v test-self

0 commit comments

Comments
 (0)