This series is based on work started by Dscho, I started to work with this series since there're merge conflicts with my series at dd/ci-musl-lib, and Dscho said he was busy for a while. Changes from v3: * Base on v3 of dd/ci-musl-libc (submited) * linux32 and linux-musl jobs' structure is the same with linux-gcc and linux-clang, they will be run inside container instead of vm: + they will install dependencies in separate step by common script + they will run ci/run-build-and-tests * StaticAnalysis job will use ci/install-dependencies to install Changes in v2 frome Dscho's version: * Based on dd/ci-musl-libc * Move artifact extraction out of Test phase of windows-test * Move ci/print-test-failures.sh out of build-and-test phase * set TERM environment variable if not exist * add linux-musl job * v1 doesn't report failure on linux32, fixed * run linux32 directly inside container * install development file of curl in documentation job because "curl-config" will be called in pu's Makefile + Other approach could be call make CURL_CONFIG=: in test-documentation.sh Sample run without busybox fix: https://github.com/sgn/git/actions/runs/69030441 Merged into old pu: https://github.com/sgn/git/actions/runs/69048780 Johannes Schindelin (4): ci/lib: if CI type is unknown, show the environment variables ci/lib: allow running in GitHub Actions README: add a build badge for the GitHub Actions runs ci: retire the Azure Pipelines definition Đoàn Trần Công Danh (2): ci/lib: set TERM environment variable if not exist ci: configure GitHub Actions for CI/PR .github/workflows/main.yml | 314 ++++++++++++++++++++ README.md | 2 +- azure-pipelines.yml | 593 ------------------------------------- ci/lib.sh | 24 +- 4 files changed, 338 insertions(+), 595 deletions(-) create mode 100644 .github/workflows/main.yml delete mode 100644 azure-pipelines.yml Range-diff against v2: 1: 4cc17cfe43 = 1: 3f9f1c6335 ci/lib: if CI type is unknown, show the environment variables 2: e7e52d5d4c = 2: 7a4f646bc1 ci/lib: allow running in GitHub Actions 3: 043f6be3ee = 3: 9a03c0844c ci/lib: set TERM environment variable if not exist 4: 834b0f73b0 ! 4: 7308199e24 ci: configure GitHub Actions for CI/PR @@ .github/workflows/main.yml (new) + container: alpine + steps: + - uses: actions/checkout@v1 -+ - name: install additional dependencies -+ run: apk add --update ncurses perl-utils -+ - name: prepare /usr/src/git -+ run: | -+ mkdir -p /usr/src && -+ rm -rf /usr/src/git && -+ ln -sf $(pwd) /usr/src/git -+ - name: ci/run-alpine-build.sh -+ run: ci/run-alpine-build.sh $(id -u) ++ - name: install dependencies ++ env: ++ jobname: linux-musl ++ run: ci/install-docker-dependencies.sh ++ - name: ci/run-build-and-tests.sh ++ env: ++ jobname: linux-musl ++ run: ci/run-build-and-tests.sh + - name: ci/print-test-failures.sh + if: failure() + run: ci/print-test-failures.sh @@ .github/workflows/main.yml (new) + container: daald/ubuntu32:xenial + steps: + - uses: actions/checkout@v1 -+ - name: prepare /usr/src/git -+ run: -+ mkdir -p /usr/src && -+ rm -rf /usr/src/git && -+ ln -sf $(pwd) /usr/src/git -+ - name: ci/run-linux32-build.sh -+ run: ci/run-linux32-build.sh $(id -u) ++ - name: install dependencies ++ env: ++ jobname: Linux32 ++ run: ci/install-docker-dependencies.sh ++ - name: ci/run-build-and-tests.sh ++ env: ++ jobname: Linux32 ++ run: ci/run-build-and-tests.sh + - name: ci/print-test-failures.sh + if: failure() + run: ci/print-test-failures.sh @@ .github/workflows/main.yml (new) + steps: + - uses: actions/checkout@v1 + - name: install dependencies -+ run: | -+ sudo apt-get update && -+ sudo apt-get install -y coccinelle libcurl4-openssl-dev libssl-dev libexpat-dev gettext ++ env: ++ jobname: StaticAnalysis ++ run: ci/install-dependencies.sh + - name: ci/run-static-analysis.sh + env: + jobname: StaticAnalysis 5: 0d14645c32 = 5: 365ba5e831 README: add a build badge for the GitHub Actions runs 6: 87abc123b0 = 6: 53094612d3 ci: retire the Azure Pipelines definition -- 2.26.0.334.g6536db25bb