From ff470b9e15de59a4bbc2b8753e6e0eedc651ba9c Mon Sep 17 00:00:00 2001 From: Scott Arnette Date: Fri, 7 Feb 2020 10:00:57 -0500 Subject: [PATCH 1/2] Backport of Github Actions. --- .cicd/build.sh | 33 +++------- .../pinned/amazon_linux-2-pinned.dockerfile | 5 +- .../pinned/centos-7.7-pinned.dockerfile | 8 +-- .../pinned/ubuntu-16.04-pinned.dockerfile | 11 +--- .../pinned/ubuntu-18.04-pinned.dockerfile | 2 +- .../amazon_linux-2-unpinned.dockerfile | 5 +- .../unpinned/centos-7.7-unpinned.dockerfile | 8 +-- .../unpinned/ubuntu-18.04-unpinned.dockerfile | 2 +- .cicd/submodule-regression-check.sh | 29 ++++----- .travis.yml | 60 ------------------- 10 files changed, 28 insertions(+), 135 deletions(-) delete mode 100644 .travis.yml diff --git a/.cicd/build.sh b/.cicd/build.sh index e22658d57b6..4ace105301e 100755 --- a/.cicd/build.sh +++ b/.cicd/build.sh @@ -2,17 +2,11 @@ set -eo pipefail . ./.cicd/helpers/general.sh mkdir -p $BUILD_DIR -CMAKE_EXTRAS="-DCMAKE_BUILD_TYPE='Release' -DENABLE_MULTIVERSION_PROTOCOL_TEST=true" +CMAKE_EXTRAS="-DCMAKE_BUILD_TYPE='Release' -DENABLE_MULTIVERSION_PROTOCOL_TEST=true -DBUILD_MONGO_DB_PLUGIN=true" if [[ "$(uname)" == 'Darwin' ]]; then # You can't use chained commands in execute - if [[ "$TRAVIS" == 'true' ]]; then + if [[ "$GITHUB_ACTIONS" == 'true' ]]; then export PINNED=false - brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/1d91e94e8ecdf6877ad2c24a7cda1114e50f2a14/Formula/llvm@4.rb # Workaround for Travis cannot build LLVM4 from source. - brew reinstall openssl@1.1 # Fixes issue where builds in Travis cannot find libcrypto. - ccache -s - CMAKE_EXTRAS="$CMAKE_EXTRAS -DCMAKE_CXX_COMPILER_LAUNCHER=ccache" - else - CMAKE_EXTRAS="$CMAKE_EXTRAS -DBUILD_MONGO_DB_PLUGIN=true" fi [[ ! "$PINNED" == 'false' ]] && CMAKE_EXTRAS="$CMAKE_EXTRAS -DCMAKE_TOOLCHAIN_FILE=$HELPERS_DIR/clang.make" cd $BUILD_DIR @@ -21,27 +15,16 @@ if [[ "$(uname)" == 'Darwin' ]]; then echo "make -j$JOBS" make -j$JOBS else # Linux - CMAKE_EXTRAS="$CMAKE_EXTRAS -DBUILD_MONGO_DB_PLUGIN=true" ARGS=${ARGS:-"--rm --init -v $(pwd):$MOUNTED_DIR"} PRE_COMMANDS="cd $MOUNTED_DIR/build" # PRE_COMMANDS: Executed pre-cmake # CMAKE_EXTRAS: Executed within and right before the cmake path (cmake CMAKE_EXTRAS ..) - [[ ! "$IMAGE_TAG" =~ 'unpinned' ]] && CMAKE_EXTRAS="$CMAKE_EXTRAS -DCMAKE_TOOLCHAIN_FILE=$MOUNTED_DIR/.cicd/helpers/clang.make -DCMAKE_CXX_COMPILER_LAUNCHER=ccache" - if [[ "$IMAGE_TAG" == 'amazon_linux-2-pinned' ]]; then - PRE_COMMANDS="$PRE_COMMANDS && export PATH=/usr/lib64/ccache:\\\$PATH" - elif [[ "$IMAGE_TAG" == 'centos-7.7-pinned' ]]; then - PRE_COMMANDS="$PRE_COMMANDS && export PATH=/usr/lib64/ccache:\\\$PATH" - elif [[ "$IMAGE_TAG" == 'ubuntu-16.04-pinned' ]]; then - PRE_COMMANDS="$PRE_COMMANDS && export PATH=/usr/lib/ccache:\\\$PATH" - elif [[ "$IMAGE_TAG" == 'ubuntu-18.04-pinned' ]]; then - PRE_COMMANDS="$PRE_COMMANDS && export PATH=/usr/lib/ccache:\\\$PATH" - elif [[ "$IMAGE_TAG" == 'amazon_linux-2-unpinned' ]]; then - PRE_COMMANDS="$PRE_COMMANDS && export PATH=/usr/lib64/ccache:\\\$PATH" + [[ ! "$IMAGE_TAG" =~ 'unpinned' ]] && CMAKE_EXTRAS="$CMAKE_EXTRAS -DCMAKE_TOOLCHAIN_FILE=$MOUNTED_DIR/.cicd/helpers/clang.make" + if [[ "$IMAGE_TAG" == 'amazon_linux-2-unpinned' ]]; then CMAKE_EXTRAS="$CMAKE_EXTRAS -DCMAKE_CXX_COMPILER='clang++' -DCMAKE_C_COMPILER='clang'" elif [[ "$IMAGE_TAG" == 'centos-7.7-unpinned' ]]; then - PRE_COMMANDS="$PRE_COMMANDS && source /opt/rh/devtoolset-8/enable && source /opt/rh/rh-python36/enable && export PATH=/usr/lib64/ccache:\\\$PATH" + PRE_COMMANDS="$PRE_COMMANDS && source /opt/rh/devtoolset-8/enable && source /opt/rh/rh-python36/enable" elif [[ "$IMAGE_TAG" == 'ubuntu-18.04-unpinned' ]]; then - PRE_COMMANDS="$PRE_COMMANDS && export PATH=/usr/lib/ccache:\\\$PATH" CMAKE_EXTRAS="$CMAKE_EXTRAS -DCMAKE_CXX_COMPILER='clang++' -DCMAKE_C_COMPILER='clang'" fi BUILD_COMMANDS="cmake $CMAKE_EXTRAS .. && make -j$JOBS" @@ -52,9 +35,9 @@ else # Linux [[ "$ENABLE_INSTALL" == 'true' ]] && COMMANDS="cp -r $MOUNTED_DIR /root/eosio && cd /root/eosio/build &&" COMMANDS="$COMMANDS $BUILD_COMMANDS" [[ "$ENABLE_INSTALL" == 'true' ]] && COMMANDS="$COMMANDS && make install" - elif [[ "$TRAVIS" == 'true' ]]; then - ARGS="$ARGS -v /usr/lib/ccache -v $HOME/.ccache:/opt/.ccache -e JOBS -e TRAVIS -e CCACHE_DIR=/opt/.ccache" - COMMANDS="ccache -s && $BUILD_COMMANDS" + elif [[ "$GITHUB_ACTIONS" == 'true' ]]; then + ARGS="$ARGS -e JOBS" + COMMANDS="$BUILD_COMMANDS" fi . $HELPERS_DIR/file-hash.sh $CICD_DIR/platforms/$PLATFORM_TYPE/$IMAGE_TAG.dockerfile COMMANDS="$PRE_COMMANDS && $COMMANDS" diff --git a/.cicd/platforms/pinned/amazon_linux-2-pinned.dockerfile b/.cicd/platforms/pinned/amazon_linux-2-pinned.dockerfile index 60afc79a567..9abd0baf708 100644 --- a/.cicd/platforms/pinned/amazon_linux-2-pinned.dockerfile +++ b/.cicd/platforms/pinned/amazon_linux-2-pinned.dockerfile @@ -78,7 +78,4 @@ RUN curl -L https://github.com/mongodb/mongo-cxx-driver/archive/r3.4.0.tar.gz -o cd / && \ rm -rf mongo-cxx-driver-r3.4.0.tar.gz /mongo-cxx-driver-r3.4.0 # add mongodb to path -ENV PATH=${PATH}:/mongodb-linux-x86_64-amazon-3.6.3/bin -# install ccache -RUN curl -LO http://download-ib01.fedoraproject.org/pub/epel/7/x86_64/Packages/c/ccache-3.3.4-1.el7.x86_64.rpm && \ - yum install -y ccache-3.3.4-1.el7.x86_64.rpm \ No newline at end of file +ENV PATH=${PATH}:/mongodb-linux-x86_64-amazon-3.6.3/bin \ No newline at end of file diff --git a/.cicd/platforms/pinned/centos-7.7-pinned.dockerfile b/.cicd/platforms/pinned/centos-7.7-pinned.dockerfile index 52ef6fe8df9..bc94fd63415 100644 --- a/.cicd/platforms/pinned/centos-7.7-pinned.dockerfile +++ b/.cicd/platforms/pinned/centos-7.7-pinned.dockerfile @@ -87,10 +87,4 @@ RUN curl -L https://github.com/mongodb/mongo-cxx-driver/archive/r3.4.0.tar.gz -o cd / && \ rm -rf mongo-cxx-driver-r3.4.0.tar.gz /mongo-cxx-driver-r3.4.0 # add mongodb to path -ENV PATH=${PATH}:/mongodb-linux-x86_64-amazon-3.6.3/bin -# install ccache -RUN curl -LO http://download-ib01.fedoraproject.org/pub/epel/7/x86_64/Packages/c/ccache-3.3.4-1.el7.x86_64.rpm && \ - yum install -y ccache-3.3.4-1.el7.x86_64.rpm -# fix ccache for centos -RUN cd /usr/lib64/ccache && ln -s ../../bin/ccache c++ -ENV CCACHE_PATH="/opt/rh/devtoolset-8/root/usr/bin" \ No newline at end of file +ENV PATH=${PATH}:/mongodb-linux-x86_64-amazon-3.6.3/bin \ No newline at end of file diff --git a/.cicd/platforms/pinned/ubuntu-16.04-pinned.dockerfile b/.cicd/platforms/pinned/ubuntu-16.04-pinned.dockerfile index 8cdbe42e9ef..ad25acd5d36 100644 --- a/.cicd/platforms/pinned/ubuntu-16.04-pinned.dockerfile +++ b/.cicd/platforms/pinned/ubuntu-16.04-pinned.dockerfile @@ -79,13 +79,4 @@ RUN curl -L https://github.com/mongodb/mongo-cxx-driver/archive/r3.4.0.tar.gz -o cd / && \ rm -rf mongo-cxx-driver-r3.4.0.tar.gz /mongo-cxx-driver-r3.4.0 # add mongodb to path -ENV PATH=${PATH}:/mongodb-linux-x86_64-ubuntu1604-3.6.3/bin -# install ccache -RUN curl -LO https://github.com/ccache/ccache/releases/download/v3.4.1/ccache-3.4.1.tar.gz && \ - tar -xzf ccache-3.4.1.tar.gz && \ - cd ccache-3.4.1 && \ - ./configure && \ - make && \ - make install && \ - cd / && \ - rm -rf ccache-3.4.1.tar.gz /ccache-3.4.1 \ No newline at end of file +ENV PATH=${PATH}:/mongodb-linux-x86_64-ubuntu1604-3.6.3/bin \ No newline at end of file diff --git a/.cicd/platforms/pinned/ubuntu-18.04-pinned.dockerfile b/.cicd/platforms/pinned/ubuntu-18.04-pinned.dockerfile index 58a603575b4..8d3a85fc50e 100644 --- a/.cicd/platforms/pinned/ubuntu-18.04-pinned.dockerfile +++ b/.cicd/platforms/pinned/ubuntu-18.04-pinned.dockerfile @@ -8,7 +8,7 @@ RUN apt-get update && \ autotools-dev libicu-dev python2.7 python2.7-dev python3 \ python3-dev python-configparser python-requests python-pip \ autoconf libtool g++ gcc curl zlib1g-dev sudo ruby libusb-1.0-0-dev \ - libcurl4-gnutls-dev pkg-config patch ccache vim-common jq + libcurl4-gnutls-dev pkg-config patch vim-common jq # build cmake. RUN curl -LO https://cmake.org/files/v3.13/cmake-3.13.2.tar.gz && \ tar -xzf cmake-3.13.2.tar.gz && \ diff --git a/.cicd/platforms/unpinned/amazon_linux-2-unpinned.dockerfile b/.cicd/platforms/unpinned/amazon_linux-2-unpinned.dockerfile index b2c086a6915..609c2fbe8c1 100644 --- a/.cicd/platforms/unpinned/amazon_linux-2-unpinned.dockerfile +++ b/.cicd/platforms/unpinned/amazon_linux-2-unpinned.dockerfile @@ -61,7 +61,4 @@ RUN curl -L https://github.com/mongodb/mongo-cxx-driver/archive/r3.4.0.tar.gz -o cd / && \ rm -rf mongo-cxx-driver-r3.4.0.tar.gz /mongo-cxx-driver-r3.4.0 # add mongodb to path -ENV PATH=${PATH}:/mongodb-linux-x86_64-amazon-3.6.3/bin -# install ccache -RUN curl -LO http://download-ib01.fedoraproject.org/pub/epel/7/x86_64/Packages/c/ccache-3.3.4-1.el7.x86_64.rpm && \ - yum install -y ccache-3.3.4-1.el7.x86_64.rpm \ No newline at end of file +ENV PATH=${PATH}:/mongodb-linux-x86_64-amazon-3.6.3/bin \ No newline at end of file diff --git a/.cicd/platforms/unpinned/centos-7.7-unpinned.dockerfile b/.cicd/platforms/unpinned/centos-7.7-unpinned.dockerfile index 4005a0a8dc6..83651700696 100644 --- a/.cicd/platforms/unpinned/centos-7.7-unpinned.dockerfile +++ b/.cicd/platforms/unpinned/centos-7.7-unpinned.dockerfile @@ -74,10 +74,4 @@ RUN curl -L https://github.com/mongodb/mongo-cxx-driver/archive/r3.4.0.tar.gz -o cd / && \ rm -rf mongo-cxx-driver-r3.4.0.tar.gz /mongo-cxx-driver-r3.4.0 # add mongodb to path -ENV PATH=${PATH}:/mongodb-linux-x86_64-amazon-3.6.3/bin -# install ccache -RUN curl -LO http://download-ib01.fedoraproject.org/pub/epel/7/x86_64/Packages/c/ccache-3.3.4-1.el7.x86_64.rpm && \ - yum install -y ccache-3.3.4-1.el7.x86_64.rpm -# fix ccache for centos -RUN cd /usr/lib64/ccache && ln -s ../../bin/ccache c++ -ENV CCACHE_PATH="/opt/rh/devtoolset-8/root/usr/bin" \ No newline at end of file +ENV PATH=${PATH}:/mongodb-linux-x86_64-amazon-3.6.3/bin \ No newline at end of file diff --git a/.cicd/platforms/unpinned/ubuntu-18.04-unpinned.dockerfile b/.cicd/platforms/unpinned/ubuntu-18.04-unpinned.dockerfile index 4e0feaa0180..467ad936c2f 100644 --- a/.cicd/platforms/unpinned/ubuntu-18.04-unpinned.dockerfile +++ b/.cicd/platforms/unpinned/ubuntu-18.04-unpinned.dockerfile @@ -7,7 +7,7 @@ RUN apt-get update && \ bzip2 automake libbz2-dev libssl-dev doxygen graphviz libgmp3-dev \ autotools-dev libicu-dev python2.7 python2.7-dev python3 python3-dev \ autoconf libtool g++ gcc curl zlib1g-dev sudo ruby libusb-1.0-0-dev \ - libcurl4-gnutls-dev pkg-config patch llvm-4.0 clang ccache vim-common jq + libcurl4-gnutls-dev pkg-config patch llvm-4.0 clang vim-common jq # build cmake. RUN curl -LO https://cmake.org/files/v3.13/cmake-3.13.2.tar.gz && \ tar -xzf cmake-3.13.2.tar.gz && \ diff --git a/.cicd/submodule-regression-check.sh b/.cicd/submodule-regression-check.sh index 47b4bcacc4b..80999067204 100755 --- a/.cicd/submodule-regression-check.sh +++ b/.cicd/submodule-regression-check.sh @@ -2,16 +2,15 @@ set -eo pipefail declare -A PR_MAP declare -A BASE_MAP -# Support Travis and BK -if ${TRAVIS:-false}; then - [[ -z $TRAVIS_PULL_REQUEST_BRANCH ]] && echo "Unable to find TRAVIS_PULL_REQUEST_BRANCH ENV. Skipping submodule regression check." && exit 0 - BASE_BRANCH=$TRAVIS_BRANCH - CURRENT_BRANCH=$TRAVIS_PULL_REQUEST_BRANCH - [[ ! -z $TRAVIS_PULL_REQUEST_SLUG ]] && CURRENT_BRANCH=$TRAVIS_COMMIT # When we're not running from a PR, the slug is not set. When we are, we need to use the TRAVIS_COMMIT to be sure we're supporting the Forked PR's merge/code that's in the EOS repo. This is needed for the git log below. -else + +if [[ $BUILDKITE == true ]]; then [[ -z $BUILDKITE_PULL_REQUEST_BASE_BRANCH ]] && echo "Unable to find BUILDKITE_PULL_REQUEST_BASE_BRANCH ENV. Skipping submodule regression check." && exit 0 BASE_BRANCH=$BUILDKITE_PULL_REQUEST_BASE_BRANCH CURRENT_BRANCH=$BUILDKITE_BRANCH +else + [[ -z $GITHUB_BASE_REF ]] && echo "Cannot find \$GITHUB_BASE_REF, so we have nothing to compare submodules to. Skipping submodule regression check." && exit 0 + BASE_BRANCH=$GITHUB_BASE_REF + CURRENT_BRANCH=$GITHUB_SHA fi echo "getting submodule info for $CURRENT_BRANCH" @@ -27,17 +26,15 @@ while read -r a b; do done < <(git submodule --quiet foreach --recursive 'echo $path `git log -1 --format=%ct`') # We need to switch back to the PR ref/head so we can git log properly -if [[ $TRAVIS == true && ! -z $TRAVIS_PULL_REQUEST_SLUG ]]; then - echo "git fetch origin +refs/pull/$TRAVIS_PULL_REQUEST/merge:" - git fetch origin +refs/pull/$TRAVIS_PULL_REQUEST/merge: 1> /dev/null - echo "switching back to $TRAVIS_COMMIT" - echo 'git checkout -qf FETCH_HEAD' - git checkout -qf FETCH_HEAD 1> /dev/null -elif [[ $BUILDKITE == true ]]; then - echo "switching back to $CURRENT_BRANCH" - git checkout -f $CURRENT_BRANCH 1> /dev/null +if [[ $BUILDKITE != true ]]; then + echo "git fetch origin +$GITHUB_REF:" + git fetch origin +${GITHUB_REF}: 1> /dev/null fi +echo "switching back to $CURRENT_BRANCH..." +echo "git checkout -qf $CURRENT_BRANCH" +git checkout -qf $CURRENT_BRANCH 1> /dev/null + for k in "${!BASE_MAP[@]}"; do base_ts=${BASE_MAP[$k]} pr_ts=${PR_MAP[$k]} diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 1cf1daa32c8..00000000000 --- a/.travis.yml +++ /dev/null @@ -1,60 +0,0 @@ -language: cpp -git: - depth: false # prevent git describe failure when executing the appbase version.cmake.in -cache: - ccache: true - directories: - - $HOME/Library/Caches/Homebrew -if: fork = true OR type = api OR type = cron -matrix: - include: - - os: linux - dist: xenial - services: docker - env: - - PLATFORM_TYPE='pinned' - - IMAGE_TAG='ubuntu-18.04-pinned' - - os: linux - dist: xenial - services: docker - env: - - PLATFORM_TYPE='pinned' - - IMAGE_TAG='ubuntu-16.04-pinned' - - os: linux - dist: xenial - services: docker - env: - - PLATFORM_TYPE='pinned' - - IMAGE_TAG='amazon_linux-2-pinned' - - os: linux - dist: xenial - services: docker - env: - - PLATFORM_TYPE='pinned' - - IMAGE_TAG='centos-7.7-pinned' - - os: osx - osx_image: xcode10.2 - addons: - homebrew: - update: true - packages: - - ccache - - jq - - boost - - python@2 - - python - - libtool - - libusb - - graphviz - - automake - - wget - - gmp - - pkgconfig - - doxygen - - openssl@1.1 - env: - - PATH="/usr/local/opt/ccache/libexec:$PATH" -script: "ccache --max-size=1G && ./.cicd/build.sh && ./.cicd/test.sh scripts/parallel-test.sh && ./.cicd/test.sh scripts/serial-test.sh && if [[ $(uname) != 'Darwin' ]]; then ./.cicd/submodule-regression-check.sh; fi" -notifications: - webhooks: - secure: gmqODqoFAil2cR7v++ibqRNECBOSD/VJX+2qPa7XptkVWmVMzbII5CNgBQAscjFsp9arHPMXCCzkBi847PCSiHdsnYFQ4T273FLRWr3cDbLjfmR+BJ7dGKvQnlpSi2Ze2TtAPJyRl+iv+cxDj7cWE5zw2c4xbgh1a/cNO+/ayUfFkyMEIfVWRsHkdkra4gOLywou0XRLHr4CX1V60uU7uuqATnIMMi7gQYwiKKtZqjkbf8wcBvZirDhjQ6lDPN5tnZo6L4QHmqjtzNJg/UrD4h+zES53dLVI4uxlXRAwwpw+mJOFA3QE/3FT+bMQjLCffUz4gZaWcdgebPYzrwSWUbJoFdWAOwcTqivQY0FIQzcz/r6uGWcwWTavzkPEbg68BVM2BZId/0110J6feeTkpJ3MPV+UsIoGTvbg50vi/I06icftuZ/cLqDj3+Emifm7Jlr1sRTSdqtYAJj/2ImUfsb46cwgjAVhFOTvc+KuPgJQgvOXV7bZkxEr5qDWo8Al2sV8BWb83j1rMlZ4LfERokImDVqxu2kkcunchzvhtYFTesSpmwegVpwceCtOtO0rEUgATnfTEHzk2rm8nuz4UtidsQnluUKqmKD0QCqHXFfn+3ZRJsDqr+iCYdxv1BAeAVc9q1L7bgrKDMGiJgkxuhZ2v3J2SflWLvjZjFDduuc= From b975a934afda92c9e9a1cb6efdb6707001269a76 Mon Sep 17 00:00:00 2001 From: Scott Arnette Date: Fri, 7 Feb 2020 10:03:19 -0500 Subject: [PATCH 2/2] Backport of Github Actions. --- .github/workflows/main.yml | 338 +++++++++++++++++++++++++++++++++++++ 1 file changed, 338 insertions(+) create mode 100644 .github/workflows/main.yml diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml new file mode 100644 index 00000000000..f3bb217d6f4 --- /dev/null +++ b/.github/workflows/main.yml @@ -0,0 +1,338 @@ +name: Pull Request +on: [pull_request] + +jobs: + start-job: + name: Start Job + runs-on: ubuntu-latest + steps: + - name: Start Job. + run: echo "PR created. Builds will be triggered here for forked PRs or Buildkite for internal PRs." + + + submodule_regression_check: + if: github.event.pull_request.base.repo.id != github.event.pull_request.head.repo.id + name: Submodule Regression Check + runs-on: ubuntu-latest + needs: start-job + steps: + - name: Checkout + uses: actions/checkout@50fbc622fc4ef5163becd7fab6573eac35f8462e + with: + submodules: recursive + - name: Submodule Regression Check + run: ./.cicd/submodule-regression-check.sh + + + amazon_linux-2-build: + if: github.event.pull_request.base.repo.id != github.event.pull_request.head.repo.id + name: Amazon_Linux 2 | Build + runs-on: ubuntu-latest + needs: start-job + steps: + - name: Checkout + uses: actions/checkout@50fbc622fc4ef5163becd7fab6573eac35f8462e + with: + submodules: recursive + - name: Build + run: | + ./.cicd/build.sh + tar -pczf build.tar.gz build + env: + IMAGE_TAG: amazon_linux-2-pinned + PLATFORM_TYPE: pinned + - name: Upload Build Artifact + uses: actions/upload-artifact@v1 + with: + name: amazon_linux-2-build + path: build.tar.gz + amazon_linux-2-parallel-test: + name: Amazon_Linux 2 | Parallel Test + runs-on: ubuntu-latest + needs: amazon_linux-2-build + steps: + - name: Checkout + uses: actions/checkout@50fbc622fc4ef5163becd7fab6573eac35f8462e + with: + submodules: recursive + - name: Download Build Artifact + uses: actions/download-artifact@v1 + with: + name: amazon_linux-2-build + - name: Parallel Test + run: | + tar -xzf amazon_linux-2-build/build.tar.gz + ./.cicd/test.sh scripts/parallel-test.sh + env: + IMAGE_TAG: amazon_linux-2-pinned + PLATFORM_TYPE: pinned + amazon_linux-2-serial-test: + name: Amazon_Linux 2 | Serial Test + runs-on: ubuntu-latest + needs: amazon_linux-2-build + steps: + - name: Checkout + uses: actions/checkout@50fbc622fc4ef5163becd7fab6573eac35f8462e + with: + submodules: recursive + - name: Download Build Artifact + uses: actions/download-artifact@v1 + with: + name: amazon_linux-2-build + - name: Serial Test + run: | + tar -xzf amazon_linux-2-build/build.tar.gz + ./.cicd/test.sh scripts/serial-test.sh + env: + IMAGE_TAG: amazon_linux-2-pinned + PLATFORM_TYPE: pinned + + + centos-77-build: + if: github.event.pull_request.base.repo.id != github.event.pull_request.head.repo.id + name: CentOS 7.7 | Build + runs-on: ubuntu-latest + needs: start-job + steps: + - name: Checkout + uses: actions/checkout@50fbc622fc4ef5163becd7fab6573eac35f8462e + with: + submodules: recursive + - name: Build + run: | + ./.cicd/build.sh + tar -pczf build.tar.gz build + env: + IMAGE_TAG: centos-7.7-pinned + PLATFORM_TYPE: pinned + - name: Upload Build Artifact + uses: actions/upload-artifact@v1 + with: + name: centos-77-build + path: build.tar.gz + centos-77-parallel-test: + name: CentOS 7.7 | Parallel Test + runs-on: ubuntu-latest + needs: centos-77-build + steps: + - name: Checkout + uses: actions/checkout@50fbc622fc4ef5163becd7fab6573eac35f8462e + with: + submodules: recursive + - name: Download Build Artifact + uses: actions/download-artifact@v1 + with: + name: centos-77-build + - name: Parallel Test + run: | + tar -xzf centos-77-build/build.tar.gz + ./.cicd/test.sh scripts/parallel-test.sh + env: + IMAGE_TAG: centos-7.7-pinned + PLATFORM_TYPE: pinned + centos-77-serial-test: + name: CentOS 7.7 | Serial Test + runs-on: ubuntu-latest + needs: centos-77-build + steps: + - name: Checkout + uses: actions/checkout@50fbc622fc4ef5163becd7fab6573eac35f8462e + with: + submodules: recursive + - name: Download Build Artifact + uses: actions/download-artifact@v1 + with: + name: centos-77-build + - name: Serial Test + run: | + tar -xzf centos-77-build/build.tar.gz + ./.cicd/test.sh scripts/serial-test.sh + env: + IMAGE_TAG: centos-7.7-pinned + PLATFORM_TYPE: pinned + + + ubuntu-1604-build: + if: github.event.pull_request.base.repo.id != github.event.pull_request.head.repo.id + name: Ubuntu 16.04 | Build + runs-on: ubuntu-latest + needs: start-job + steps: + - name: Checkout + uses: actions/checkout@50fbc622fc4ef5163becd7fab6573eac35f8462e + with: + submodules: recursive + - name: Build + run: | + ./.cicd/build.sh + tar -pczf build.tar.gz build + env: + IMAGE_TAG: ubuntu-16.04-pinned + PLATFORM_TYPE: pinned + - name: Upload Build Artifact + uses: actions/upload-artifact@v1 + with: + name: ubuntu-1604-build + path: build.tar.gz + ubuntu-1604-parallel-test: + name: Ubuntu 16.04 | Parallel Test + runs-on: ubuntu-latest + needs: ubuntu-1604-build + steps: + - name: Checkout + uses: actions/checkout@50fbc622fc4ef5163becd7fab6573eac35f8462e + with: + submodules: recursive + - name: Download Build Artifact + uses: actions/download-artifact@v1 + with: + name: ubuntu-1604-build + - name: Parallel Test + run: | + tar -xzf ubuntu-1604-build/build.tar.gz + ./.cicd/test.sh scripts/parallel-test.sh + env: + IMAGE_TAG: ubuntu-16.04-pinned + PLATFORM_TYPE: pinned + ubuntu-1604-serial-test: + name: Ubuntu 16.04 | Serial Test + runs-on: ubuntu-latest + needs: ubuntu-1604-build + steps: + - name: Checkout + uses: actions/checkout@50fbc622fc4ef5163becd7fab6573eac35f8462e + with: + submodules: recursive + - name: Download Build Artifact + uses: actions/download-artifact@v1 + with: + name: ubuntu-1604-build + - name: Serial Test + run: | + tar -xzf ubuntu-1604-build/build.tar.gz + ./.cicd/test.sh scripts/serial-test.sh + env: + IMAGE_TAG: ubuntu-16.04-pinned + PLATFORM_TYPE: pinned + + + ubuntu-1804-build: + if: github.event.pull_request.base.repo.id != github.event.pull_request.head.repo.id + name: Ubuntu 18.04 | Build + runs-on: ubuntu-latest + needs: start-job + steps: + - name: Checkout + uses: actions/checkout@50fbc622fc4ef5163becd7fab6573eac35f8462e + with: + submodules: recursive + - name: Build + run: | + ./.cicd/build.sh + tar -pczf build.tar.gz build + env: + IMAGE_TAG: ubuntu-18.04-pinned + PLATFORM_TYPE: pinned + - name: Upload Build Artifact + uses: actions/upload-artifact@v1 + with: + name: ubuntu-1804-build + path: build.tar.gz + ubuntu-1804-parallel-test: + name: Ubuntu 18.04 | Parallel Test + runs-on: ubuntu-latest + needs: ubuntu-1804-build + steps: + - name: Checkout + uses: actions/checkout@50fbc622fc4ef5163becd7fab6573eac35f8462e + with: + submodules: recursive + - name: Download Build Artifact + uses: actions/download-artifact@v1 + with: + name: ubuntu-1804-build + - name: Parallel Test + run: | + tar -xzf ubuntu-1804-build/build.tar.gz + ./.cicd/test.sh scripts/parallel-test.sh + env: + IMAGE_TAG: ubuntu-18.04-pinned + PLATFORM_TYPE: pinned + ubuntu-1804-serial-test: + name: Ubuntu 18.04 | Serial Test + runs-on: ubuntu-latest + needs: ubuntu-1804-build + steps: + - name: Checkout + uses: actions/checkout@50fbc622fc4ef5163becd7fab6573eac35f8462e + with: + submodules: recursive + - name: Download Build Artifact + uses: actions/download-artifact@v1 + with: + name: ubuntu-1804-build + - name: Serial Test + run: | + tar -xzf ubuntu-1804-build/build.tar.gz + ./.cicd/test.sh scripts/serial-test.sh + env: + IMAGE_TAG: ubuntu-18.04-pinned + PLATFORM_TYPE: pinned + + + macos-1015-build: + if: github.event.pull_request.base.repo.id != github.event.pull_request.head.repo.id + name: MacOS 10.15 | Build + runs-on: macos-latest + needs: start-job + steps: + - name: Checkout + uses: actions/checkout@50fbc622fc4ef5163becd7fab6573eac35f8462e + with: + submodules: recursive + - name: Build + run: | + ./.cicd/platforms/unpinned/macos-10.14-unpinned.sh + ./.cicd/build.sh + tar -pczf build.tar.gz build + - name: Upload Build Artifact + uses: actions/upload-artifact@v1 + with: + name: macos-1015-build + path: build.tar.gz + macos-1015-parallel-test: + name: MacOS 10.15 | Parallel Test + runs-on: macos-latest + needs: macos-1015-build + steps: + - name: Checkout + uses: actions/checkout@50fbc622fc4ef5163becd7fab6573eac35f8462e + with: + submodules: recursive + - name: Download Build Artifact + uses: actions/download-artifact@v1 + with: + name: macos-1015-build + - name: Parallel Test + run: | + ./.cicd/platforms/unpinned/macos-10.14-unpinned.sh + tar -xzf macos-1015-build/build.tar.gz + ./.cicd/test.sh scripts/parallel-test.sh + macos-1015-serial-test: + name: MacOS 10.15 | Serial Test + runs-on: macos-latest + needs: macos-1015-build + steps: + - name: Checkout + uses: actions/checkout@50fbc622fc4ef5163becd7fab6573eac35f8462e + with: + submodules: recursive + - name: Download Build Artifact + uses: actions/download-artifact@v1 + with: + name: macos-1015-build + - name: Serial Test + run: | + ./.cicd/platforms/unpinned/macos-10.14-unpinned.sh + tar -xzf macos-1015-build/build.tar.gz + ./.cicd/test.sh scripts/serial-test.sh \ No newline at end of file