GitHub Actions: push artifacts only on next branch (#5388)
This commit is contained in:
parent
bfbe73f665
commit
6911c116e7
34
.github/workflows/main.yml
vendored
34
.github/workflows/main.yml
vendored
@ -19,8 +19,6 @@ jobs:
|
|||||||
DOCKER_PASS: ${{ secrets.DOCKER_PASS }}
|
DOCKER_PASS: ${{ secrets.DOCKER_PASS }}
|
||||||
DOCKER_EMAIL: ${{ secrets.DOCKER_EMAIL }}
|
DOCKER_EMAIL: ${{ secrets.DOCKER_EMAIL }}
|
||||||
DOCKER_USER: ${{ secrets.DOCKER_USER }}
|
DOCKER_USER: ${{ secrets.DOCKER_USER }}
|
||||||
GH_TOKEN: ${{ secrets.GH_TOKEN }}
|
|
||||||
BALTO_TOKEN: ${{ secrets.BALTO_TOKEN }}
|
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v3
|
||||||
@ -32,9 +30,6 @@ jobs:
|
|||||||
- name: fetch or build Docker container
|
- name: fetch or build Docker container
|
||||||
run: |
|
run: |
|
||||||
docker pull ${{ env.BASENAME }} || ./travis/docker-build-and-push.sh ${{ env.BASENAME }} travis/travis-base.Dockerfile
|
docker pull ${{ env.BASENAME }} || ./travis/docker-build-and-push.sh ${{ env.BASENAME }} travis/travis-base.Dockerfile
|
||||||
- name: fetch or build extra Docker containers
|
|
||||||
run: |
|
|
||||||
./travis/skip-pkg.sh || docker pull ${{ env.BASENAME_UBUNTU }} || ./travis/docker-build-and-push.sh ${{ env.BASENAME_UBUNTU }} travis/travis-base-ubuntu.Dockerfile
|
|
||||||
- name: build i3
|
- name: build i3
|
||||||
run: |
|
run: |
|
||||||
docker run -v $PWD:/usr/src/i3/ -w /usr/src/i3 -e CC ${{ env.BASENAME }} /bin/sh -c 'rm -rf build; mkdir -p build && cd build && CFLAGS="-Wformat -Wformat-security -Wextra -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Werror -fno-common -D_FORTIFY_SOURCE=3" meson setup .. -Ddocs=true -Dmans=true -Db_sanitize=address --buildtype=debugoptimized && ninja -v'
|
docker run -v $PWD:/usr/src/i3/ -w /usr/src/i3 -e CC ${{ env.BASENAME }} /bin/sh -c 'rm -rf build; mkdir -p build && cd build && CFLAGS="-Wformat -Wformat-security -Wextra -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Werror -fno-common -D_FORTIFY_SOURCE=3" meson setup .. -Ddocs=true -Dmans=true -Db_sanitize=address --buildtype=debugoptimized && ninja -v'
|
||||||
@ -53,23 +48,36 @@ jobs:
|
|||||||
- name: build dist tarball
|
- name: build dist tarball
|
||||||
run: |
|
run: |
|
||||||
docker run -v $PWD:/usr/src/i3/ -w /usr/src/i3 -e CC ${{ env.BASENAME }} /bin/sh -c 'rm -rf distbuild; mkdir distbuild && cd distbuild && meson setup .. -Ddocs=true -Dmans=true && meson dist --no-tests'
|
docker run -v $PWD:/usr/src/i3/ -w /usr/src/i3 -e CC ${{ env.BASENAME }} /bin/sh -c 'rm -rf distbuild; mkdir distbuild && cd distbuild && meson setup .. -Ddocs=true -Dmans=true && meson dist --no-tests'
|
||||||
|
deploy:
|
||||||
|
name: Push artifacts
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
needs: [build]
|
||||||
|
env:
|
||||||
|
DOCKER_PASS: ${{ secrets.DOCKER_PASS }}
|
||||||
|
DOCKER_EMAIL: ${{ secrets.DOCKER_EMAIL }}
|
||||||
|
DOCKER_USER: ${{ secrets.DOCKER_USER }}
|
||||||
|
GH_TOKEN: ${{ secrets.GH_TOKEN }}
|
||||||
|
BALTO_TOKEN: ${{ secrets.BALTO_TOKEN }}
|
||||||
|
if: github.ref == 'refs/heads/next'
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
- name: fetch or build extra Docker containers
|
||||||
|
run: |
|
||||||
|
docker pull ${{ env.BASENAME_UBUNTU }} || ./travis/docker-build-and-push.sh ${{ env.BASENAME_UBUNTU }} travis/travis-base-ubuntu.Dockerfile
|
||||||
- name: build Debian packages
|
- name: build Debian packages
|
||||||
run: |
|
run: |
|
||||||
echo "::group::Debian amd64"
|
echo "::group::Debian amd64"
|
||||||
./travis/skip-pkg.sh || docker run -v $PWD:/usr/src/i3/ -w /usr/src/i3 ${{ env.BASENAME }} ./travis/debian-build.sh deb/debian-amd64/DIST
|
docker run -v $PWD:/usr/src/i3/ -w /usr/src/i3 ${{ env.BASENAME }} ./travis/debian-build.sh deb/debian-amd64/DIST
|
||||||
echo "::endgroup::"
|
echo "::endgroup::"
|
||||||
echo "::group::Ubuntu amd64"
|
echo "::group::Ubuntu amd64"
|
||||||
./travis/skip-pkg.sh || docker run -v $PWD:/usr/src/i3/ -w /usr/src/i3 ${{ env.BASENAME_UBUNTU }} ./travis/debian-build.sh deb/ubuntu-amd64/DIST
|
docker run -v $PWD:/usr/src/i3/ -w /usr/src/i3 ${{ env.BASENAME_UBUNTU }} ./travis/debian-build.sh deb/ubuntu-amd64/DIST
|
||||||
echo "::endgroup::"
|
echo "::endgroup::"
|
||||||
- name: push Debian packages to balto
|
- name: push Debian packages to balto
|
||||||
run: |
|
run: travis/push-balto.sh
|
||||||
./travis/skip-pkg.sh || travis/push-balto.sh
|
|
||||||
- name: build docs
|
- name: build docs
|
||||||
run: |
|
run: docker run -v $PWD:/usr/src/i3/ -w /usr/src/i3 ${{ env.BASENAME }} ./travis/docs.sh
|
||||||
./travis/skip-pkg.sh || docker run -v $PWD:/usr/src/i3/ -w /usr/src/i3 ${{ env.BASENAME }} ./travis/docs.sh
|
|
||||||
- name: push docs to GitHub pages
|
- name: push docs to GitHub pages
|
||||||
run: |
|
run: travis/deploy-github-pages.sh
|
||||||
./travis/skip-pkg.sh || travis/deploy-github-pages.sh
|
|
||||||
formatting:
|
formatting:
|
||||||
name: Check formatting
|
name: Check formatting
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
@ -1,14 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
# Returns true if Debian/Ubuntu packages should be skipped because this CI run
|
|
||||||
# was triggered by a pull request.
|
|
||||||
|
|
||||||
# Verify BALTO_TOKEN is present (only set on github.com/i3/i3),
|
|
||||||
# otherwise the CI run was triggered by a pull request.
|
|
||||||
# Verify CC=gcc so that we only build packages once for each commit,
|
|
||||||
# not twice (with gcc and clang).
|
|
||||||
if [ ! -z "$BALTO_TOKEN" ] && [ "$CC" = "gcc" ]
|
|
||||||
then
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
exit 0
|
|
Loading…
x
Reference in New Issue
Block a user