From 229d69d9de8addd651a6b546961f09d503a7bc18 Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Mon, 13 May 2019 10:53:48 -0400 Subject: [PATCH 01/40] Removed commented-out code --- .buildkite/pipeline.yml | 39 ++++++++------------------------------- 1 file changed, 8 insertions(+), 31 deletions(-) diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index af1fc1044de..a124699ecc5 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -5,7 +5,6 @@ env: MAC_TAG: "eosio_2-4" steps: - - label: ":darwin: Ensure Mojave Anka Template Dependency Tag/Layer Exists" command: - "git clone git@github.com:EOSIO/mac-anka-fleet.git" @@ -22,27 +21,8 @@ steps: PROJECT_TAG: "${MAC_TAG}" timeout: 60 - # - trigger: "mac-anka-fleet" - # label: ":anka: Ensure Mojave Anka Template Tag Exists" - # branches: "*" - # async: false - # build: - # branch: "master" - # env: - # REPO: "${BUILDKITE_REPO}" - # REPO_COMMIT: "${BUILDKITE_COMMIT}" - # CHECKSUMABLE: "${CHECKSUMABLE}" - # TEMPLATE: "${ANKA_MOJAVE_TEMPLATE}" - # TEMPLATE_TAG: "${ANKA_TEMPLATE_TAG}" - # TAG_COMMANDS: "CLONED_REPO_DIR/scripts/eosio_build.sh -y -P -m" # CLONED_REPO_DIR IS REQUIRED and is where the repo is always cloned into - # PROJECT_TAG: "${MAC_TAG}" - - wait - ############################ - # BUILDING ################# - ############################ - - label: ":darwin: [Darwin] Mojave Build" command: - "git clone ${BUILDKITE_PULL_REQUEST_REPO:-$BUILDKITE_REPO} && cd eos && git checkout ${BUILDKITE_COMMIT} && git submodule update --init --recursive && ./scripts/eosio_build.sh -y -P -m" @@ -149,11 +129,7 @@ steps: - wait - ################################ - # TESTS ######################## - ################################ - - # MOJAVE # + # MacOS Mojave - label: ":darwin: [Darwin] Mojave Tests" command: - "tar -xzf /Network/NAS/MAC_FLEET/BUILDKITE/artifacts/${ANKA_MOJAVE_TEMPLATE}-${BUILDKITE_PIPELINE_SLUG}-${BUILDKITE_BUILD_ID}.tar.gz" @@ -190,7 +166,7 @@ steps: wait-network: true timeout: 120 - # AmazonLinux # + # Amazon Linux 2 - label: ":aws: Amazon Linux 2 Tests" command: - "echo \"--- :arrow_down: Downloading Build Directory\" && buildkite-agent artifact download \"build.tar.gz\" . --step \":aws: Amazon Linux 2 Build\"" @@ -232,7 +208,7 @@ steps: workdir: /data/job timeout: 60 - # CentOS # + # CentOS - label: ":centos: CentOS 7 Tests" command: - "echo \"--- :arrow_down: Downloading Build Directory\" && buildkite-agent artifact download \"build.tar.gz\" . --step \":centos: CentOS 7 Build\"" @@ -273,7 +249,7 @@ steps: workdir: /data/job timeout: 60 - # Ubuntu # + # Ubuntu 16.04 - label: ":ubuntu: Ubuntu 16.04 Tests" command: - "echo \"--- :arrow_down: Downloading Build Directory\" && buildkite-agent artifact download \"build.tar.gz\" . --step \":ubuntu: Ubuntu 16.04 Build\"" @@ -314,6 +290,7 @@ steps: workdir: /data/job timeout: 60 + # Ubuntu 18.04 - label: ":ubuntu: Ubuntu 18.04 Tests" command: - "echo \"--- :arrow_down: Downloading Build Directory\" && buildkite-agent artifact download \"build.tar.gz\" . --step \":ubuntu: Ubuntu 18.04 Build\"" @@ -354,7 +331,7 @@ steps: workdir: /data/job timeout: 60 - - wait: + - wait: # Test Metrics continue_on_failure: true - command: | @@ -493,11 +470,11 @@ steps: artifact_paths: - "build/packages/eosio.rb" timeout: 5 + - command: | # Git Submodule Regression Check echo "+++ :microscope: Running git submodule regression check" && \ ./scripts/submodule_check.sh label: "Git Submodule Regression Check" agents: queue: "automation-large-builder-fleet" - timeout: 5 - + timeout: 5 \ No newline at end of file From b47ea7e09c637aabc3ad36bd8203496896c19fbd Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Mon, 13 May 2019 10:59:46 -0400 Subject: [PATCH 02/40] Disable pipeline steps not relevant to package builder --- .buildkite/pipeline.yml | 446 ++++++++++++++++++++-------------------- 1 file changed, 223 insertions(+), 223 deletions(-) diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index a124699ecc5..24d8c96dd87 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -42,26 +42,26 @@ steps: - "queue=mac-anka-large-node-fleet" timeout: 120 - - label: ":aws: Amazon Linux 2 Build" - command: - - "./scripts/eosio_build.sh -y -P -m" - - "tar -pczf build.tar.gz build; if [[ ! -f build.tar.gz ]]; then echo 'ERROR: No build.tar.gz artifact found!' && exit 1; fi" - agents: - queue: "automation-large-builder-fleet" - artifact_paths: "build.tar.gz" - plugins: - ecr#v1.1.4: - login: true - account_ids: "436617320021" - no-include-email: true - region: "us-west-2" - docker#v3.1.0: - shell: ["/bin/bash", "-i", "-e", "-c"] - debug: true - image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:amazonlinux2_2-4" - propagate-environment: true - workdir: /data/job - timeout: 120 + # - label: ":aws: Amazon Linux 2 Build" + # command: + # - "./scripts/eosio_build.sh -y -P -m" + # - "tar -pczf build.tar.gz build; if [[ ! -f build.tar.gz ]]; then echo 'ERROR: No build.tar.gz artifact found!' && exit 1; fi" + # agents: + # queue: "automation-large-builder-fleet" + # artifact_paths: "build.tar.gz" + # plugins: + # ecr#v1.1.4: + # login: true + # account_ids: "436617320021" + # no-include-email: true + # region: "us-west-2" + # docker#v3.1.0: + # shell: ["/bin/bash", "-i", "-e", "-c"] + # debug: true + # image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:amazonlinux2_2-4" + # propagate-environment: true + # workdir: /data/job + # timeout: 120 - label: ":centos: CentOS 7 Build" command: @@ -127,221 +127,221 @@ steps: workdir: /data/job timeout: 120 - - wait + # - wait - # MacOS Mojave - - label: ":darwin: [Darwin] Mojave Tests" - command: - - "tar -xzf /Network/NAS/MAC_FLEET/BUILDKITE/artifacts/${ANKA_MOJAVE_TEMPLATE}-${BUILDKITE_PIPELINE_SLUG}-${BUILDKITE_BUILD_ID}.tar.gz" - - "cd eos && ./scripts/parallel-test.sh" - agents: - - "queue=mac-anka-node-fleet" - plugins: - chef/anka#v0.4.4: - no-volume: true - inherit-environment-vars: true - bash-interactive: true - vm-name: $ANKA_MOJAVE_TEMPLATE - vm-registry-tag: "${ANKA_TEMPLATE_TAG}::${MAC_TAG}" - always-pull: true - debug: true - wait-network: true - timeout: 120 + # # MacOS Mojave + # - label: ":darwin: [Darwin] Mojave Tests" + # command: + # - "tar -xzf /Network/NAS/MAC_FLEET/BUILDKITE/artifacts/${ANKA_MOJAVE_TEMPLATE}-${BUILDKITE_PIPELINE_SLUG}-${BUILDKITE_BUILD_ID}.tar.gz" + # - "cd eos && ./scripts/parallel-test.sh" + # agents: + # - "queue=mac-anka-node-fleet" + # plugins: + # chef/anka#v0.4.4: + # no-volume: true + # inherit-environment-vars: true + # bash-interactive: true + # vm-name: $ANKA_MOJAVE_TEMPLATE + # vm-registry-tag: "${ANKA_TEMPLATE_TAG}::${MAC_TAG}" + # always-pull: true + # debug: true + # wait-network: true + # timeout: 120 - - label: ":darwin: [Darwin] Mojave NP Tests" - command: - - "tar -xzf /Network/NAS/MAC_FLEET/BUILDKITE/artifacts/${ANKA_MOJAVE_TEMPLATE}-${BUILDKITE_PIPELINE_SLUG}-${BUILDKITE_BUILD_ID}.tar.gz" - - "cd eos && ./scripts/serial-test.sh" - agents: - - "queue=mac-anka-node-fleet" - plugins: - chef/anka#v0.4.4: - no-volume: true - inherit-environment-vars: true - bash-interactive: true - vm-name: $ANKA_MOJAVE_TEMPLATE - vm-registry-tag: "${ANKA_TEMPLATE_TAG}::${MAC_TAG}" - always-pull: true - debug: true - wait-network: true - timeout: 120 + # - label: ":darwin: [Darwin] Mojave NP Tests" + # command: + # - "tar -xzf /Network/NAS/MAC_FLEET/BUILDKITE/artifacts/${ANKA_MOJAVE_TEMPLATE}-${BUILDKITE_PIPELINE_SLUG}-${BUILDKITE_BUILD_ID}.tar.gz" + # - "cd eos && ./scripts/serial-test.sh" + # agents: + # - "queue=mac-anka-node-fleet" + # plugins: + # chef/anka#v0.4.4: + # no-volume: true + # inherit-environment-vars: true + # bash-interactive: true + # vm-name: $ANKA_MOJAVE_TEMPLATE + # vm-registry-tag: "${ANKA_TEMPLATE_TAG}::${MAC_TAG}" + # always-pull: true + # debug: true + # wait-network: true + # timeout: 120 - # Amazon Linux 2 - - label: ":aws: Amazon Linux 2 Tests" - command: - - "echo \"--- :arrow_down: Downloading Build Directory\" && buildkite-agent artifact download \"build.tar.gz\" . --step \":aws: Amazon Linux 2 Build\"" - - "./scripts/parallel-test.sh" - agents: - queue: "automation-large-builder-fleet" - plugins: - ecr#v1.1.4: - login: true - account_ids: "436617320021" - no-include-email: true - region: "us-west-2" - docker#v3.2.0: - shell: ["/bin/bash", "-i", "-e", "-c"] - debug: true - image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:amazonlinux2_2-4" - propagate-environment: true - workdir: /data/job - timeout: 60 + # # Amazon Linux 2 + # - label: ":aws: Amazon Linux 2 Tests" + # command: + # - "echo \"--- :arrow_down: Downloading Build Directory\" && buildkite-agent artifact download \"build.tar.gz\" . --step \":aws: Amazon Linux 2 Build\"" + # - "./scripts/parallel-test.sh" + # agents: + # queue: "automation-large-builder-fleet" + # plugins: + # ecr#v1.1.4: + # login: true + # account_ids: "436617320021" + # no-include-email: true + # region: "us-west-2" + # docker#v3.2.0: + # shell: ["/bin/bash", "-i", "-e", "-c"] + # debug: true + # image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:amazonlinux2_2-4" + # propagate-environment: true + # workdir: /data/job + # timeout: 60 - - label: ":aws: Amazon Linux 2 NP Tests" - command: - - "echo \"--- :arrow_down: Downloading Build Directory\" && buildkite-agent artifact download \"build.tar.gz\" . --step \":aws: Amazon Linux 2 Build\"" - - "./scripts/serial-test.sh" - label: ":aws: Amazon Linux 2 NP Tests" - agents: - queue: "automation-large-builder-fleet" - plugins: - ecr#v1.1.4: - login: true - account_ids: "436617320021" - no-include-email: true - region: "us-west-2" - docker#v3.2.0: - shell: ["/bin/bash", "-i", "-e", "-c"] - debug: true - image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:amazonlinux2_2-4" - propagate-environment: true - workdir: /data/job - timeout: 60 + # - label: ":aws: Amazon Linux 2 NP Tests" + # command: + # - "echo \"--- :arrow_down: Downloading Build Directory\" && buildkite-agent artifact download \"build.tar.gz\" . --step \":aws: Amazon Linux 2 Build\"" + # - "./scripts/serial-test.sh" + # label: ":aws: Amazon Linux 2 NP Tests" + # agents: + # queue: "automation-large-builder-fleet" + # plugins: + # ecr#v1.1.4: + # login: true + # account_ids: "436617320021" + # no-include-email: true + # region: "us-west-2" + # docker#v3.2.0: + # shell: ["/bin/bash", "-i", "-e", "-c"] + # debug: true + # image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:amazonlinux2_2-4" + # propagate-environment: true + # workdir: /data/job + # timeout: 60 - # CentOS - - label: ":centos: CentOS 7 Tests" - command: - - "echo \"--- :arrow_down: Downloading Build Directory\" && buildkite-agent artifact download \"build.tar.gz\" . --step \":centos: CentOS 7 Build\"" - - "./scripts/parallel-test.sh" - agents: - queue: "automation-large-builder-fleet" - plugins: - ecr#v1.1.4: - login: true - account_ids: "436617320021" - no-include-email: true - region: "us-west-2" - docker#v3.2.0: - shell: ["/bin/bash", "-i", "-e", "-c"] - debug: true - image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:centos7_2-4" - propagate-environment: true - workdir: /data/job - timeout: 60 + # # CentOS + # - label: ":centos: CentOS 7 Tests" + # command: + # - "echo \"--- :arrow_down: Downloading Build Directory\" && buildkite-agent artifact download \"build.tar.gz\" . --step \":centos: CentOS 7 Build\"" + # - "./scripts/parallel-test.sh" + # agents: + # queue: "automation-large-builder-fleet" + # plugins: + # ecr#v1.1.4: + # login: true + # account_ids: "436617320021" + # no-include-email: true + # region: "us-west-2" + # docker#v3.2.0: + # shell: ["/bin/bash", "-i", "-e", "-c"] + # debug: true + # image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:centos7_2-4" + # propagate-environment: true + # workdir: /data/job + # timeout: 60 - - label: ":centos: CentOS 7 NP Tests" - command: - - "echo \"--- :arrow_down: Downloading Build Directory\" && buildkite-agent artifact download \"build.tar.gz\" . --step \":centos: CentOS 7 Build\"" - - "./scripts/serial-test.sh" - agents: - queue: "automation-large-builder-fleet" - plugins: - ecr#v1.1.4: - login: true - account_ids: "436617320021" - no-include-email: true - region: "us-west-2" - docker#v3.2.0: - shell: ["/bin/bash", "-i", "-e", "-c"] - debug: true - image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:centos7_2-4" - propagate-environment: true - workdir: /data/job - timeout: 60 + # - label: ":centos: CentOS 7 NP Tests" + # command: + # - "echo \"--- :arrow_down: Downloading Build Directory\" && buildkite-agent artifact download \"build.tar.gz\" . --step \":centos: CentOS 7 Build\"" + # - "./scripts/serial-test.sh" + # agents: + # queue: "automation-large-builder-fleet" + # plugins: + # ecr#v1.1.4: + # login: true + # account_ids: "436617320021" + # no-include-email: true + # region: "us-west-2" + # docker#v3.2.0: + # shell: ["/bin/bash", "-i", "-e", "-c"] + # debug: true + # image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:centos7_2-4" + # propagate-environment: true + # workdir: /data/job + # timeout: 60 - # Ubuntu 16.04 - - label: ":ubuntu: Ubuntu 16.04 Tests" - command: - - "echo \"--- :arrow_down: Downloading Build Directory\" && buildkite-agent artifact download \"build.tar.gz\" . --step \":ubuntu: Ubuntu 16.04 Build\"" - - "./scripts/parallel-test.sh" - agents: - queue: "automation-large-builder-fleet" - plugins: - ecr#v1.1.4: - login: true - account_ids: "436617320021" - no-include-email: true - region: "us-west-2" - docker#v3.2.0: - shell: ["/bin/bash", "-i", "-e", "-c"] - debug: true - image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:ubuntu16_2-4" - propagate-environment: true - workdir: /data/job - timeout: 60 + # # Ubuntu 16.04 + # - label: ":ubuntu: Ubuntu 16.04 Tests" + # command: + # - "echo \"--- :arrow_down: Downloading Build Directory\" && buildkite-agent artifact download \"build.tar.gz\" . --step \":ubuntu: Ubuntu 16.04 Build\"" + # - "./scripts/parallel-test.sh" + # agents: + # queue: "automation-large-builder-fleet" + # plugins: + # ecr#v1.1.4: + # login: true + # account_ids: "436617320021" + # no-include-email: true + # region: "us-west-2" + # docker#v3.2.0: + # shell: ["/bin/bash", "-i", "-e", "-c"] + # debug: true + # image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:ubuntu16_2-4" + # propagate-environment: true + # workdir: /data/job + # timeout: 60 - - label: ":ubuntu: Ubuntu 16.04 NP Tests" - command: - - "echo \"--- :arrow_down: Downloading Build Directory\" && buildkite-agent artifact download \"build.tar.gz\" . --step \":ubuntu: Ubuntu 16.04 Build\"" - - "./scripts/serial-test.sh" - agents: - queue: "automation-large-builder-fleet" - plugins: - ecr#v1.1.4: - login: true - account_ids: "436617320021" - no-include-email: true - region: "us-west-2" - docker#v3.2.0: - shell: ["/bin/bash", "-i", "-e", "-c"] - debug: true - image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:ubuntu16_2-4" - propagate-environment: true - workdir: /data/job - timeout: 60 + # - label: ":ubuntu: Ubuntu 16.04 NP Tests" + # command: + # - "echo \"--- :arrow_down: Downloading Build Directory\" && buildkite-agent artifact download \"build.tar.gz\" . --step \":ubuntu: Ubuntu 16.04 Build\"" + # - "./scripts/serial-test.sh" + # agents: + # queue: "automation-large-builder-fleet" + # plugins: + # ecr#v1.1.4: + # login: true + # account_ids: "436617320021" + # no-include-email: true + # region: "us-west-2" + # docker#v3.2.0: + # shell: ["/bin/bash", "-i", "-e", "-c"] + # debug: true + # image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:ubuntu16_2-4" + # propagate-environment: true + # workdir: /data/job + # timeout: 60 - # Ubuntu 18.04 - - label: ":ubuntu: Ubuntu 18.04 Tests" - command: - - "echo \"--- :arrow_down: Downloading Build Directory\" && buildkite-agent artifact download \"build.tar.gz\" . --step \":ubuntu: Ubuntu 18.04 Build\"" - - "./scripts/parallel-test.sh" - agents: - queue: "automation-large-builder-fleet" - plugins: - ecr#v1.1.4: - login: true - account_ids: "436617320021" - no-include-email: true - region: "us-west-2" - docker#v3.2.0: - shell: ["/bin/bash", "-i", "-e", "-c"] - debug: true - image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:ubuntu18_2-4" - propagate-environment: true - workdir: /data/job - timeout: 60 + # # Ubuntu 18.04 + # - label: ":ubuntu: Ubuntu 18.04 Tests" + # command: + # - "echo \"--- :arrow_down: Downloading Build Directory\" && buildkite-agent artifact download \"build.tar.gz\" . --step \":ubuntu: Ubuntu 18.04 Build\"" + # - "./scripts/parallel-test.sh" + # agents: + # queue: "automation-large-builder-fleet" + # plugins: + # ecr#v1.1.4: + # login: true + # account_ids: "436617320021" + # no-include-email: true + # region: "us-west-2" + # docker#v3.2.0: + # shell: ["/bin/bash", "-i", "-e", "-c"] + # debug: true + # image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:ubuntu18_2-4" + # propagate-environment: true + # workdir: /data/job + # timeout: 60 - - label: ":ubuntu: Ubuntu 18.04 NP Tests" - command: - - "echo \"--- :arrow_down: Downloading Build Directory\" && buildkite-agent artifact download \"build.tar.gz\" . --step \":ubuntu: Ubuntu 18.04 Build\"" - - "./scripts/serial-test.sh" - agents: - queue: "automation-large-builder-fleet" - plugins: - ecr#v1.1.4: - login: true - account_ids: "436617320021" - no-include-email: true - region: "us-west-2" - docker#v3.2.0: - shell: ["/bin/bash", "-i", "-e", "-c"] - debug: true - image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:ubuntu18_2-4" - propagate-environment: true - workdir: /data/job - timeout: 60 + # - label: ":ubuntu: Ubuntu 18.04 NP Tests" + # command: + # - "echo \"--- :arrow_down: Downloading Build Directory\" && buildkite-agent artifact download \"build.tar.gz\" . --step \":ubuntu: Ubuntu 18.04 Build\"" + # - "./scripts/serial-test.sh" + # agents: + # queue: "automation-large-builder-fleet" + # plugins: + # ecr#v1.1.4: + # login: true + # account_ids: "436617320021" + # no-include-email: true + # region: "us-west-2" + # docker#v3.2.0: + # shell: ["/bin/bash", "-i", "-e", "-c"] + # debug: true + # image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:ubuntu18_2-4" + # propagate-environment: true + # workdir: /data/job + # timeout: 60 - - wait: # Test Metrics - continue_on_failure: true + # - wait: # Test Metrics + # continue_on_failure: true - - command: | - cd scripts/metrics - node --max-old-space-size=4096 test-metrics.js - label: ":bar_chart: Test Metrics" - agents: - queue: "automation-apps-builder-fleet" - timeout: 10 - soft_fail: true + # - command: | + # cd scripts/metrics + # node --max-old-space-size=4096 test-metrics.js + # label: ":bar_chart: Test Metrics" + # agents: + # queue: "automation-apps-builder-fleet" + # timeout: 10 + # soft_fail: true - wait From 3192d681972d6c9c73348f32bf79d58b0f9d2067 Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Mon, 13 May 2019 14:46:46 -0400 Subject: [PATCH 03/40] Moved package builder steps into script --- .buildkite/pipeline.yml | 58 +++++++++++--------------------------- scripts/package-builder.sh | 49 ++++++++++++++++++++++++++++++++ 2 files changed, 66 insertions(+), 41 deletions(-) create mode 100755 scripts/package-builder.sh diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index 24d8c96dd87..4aed6c7c46f 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -24,9 +24,14 @@ steps: - wait - label: ":darwin: [Darwin] Mojave Build" - command: - - "git clone ${BUILDKITE_PULL_REQUEST_REPO:-$BUILDKITE_REPO} && cd eos && git checkout ${BUILDKITE_COMMIT} && git submodule update --init --recursive && ./scripts/eosio_build.sh -y -P -m" - - "tar -pczf /Network/NAS/MAC_FLEET/BUILDKITE/artifacts/${ANKA_MOJAVE_TEMPLATE}-${BUILDKITE_PIPELINE_SLUG}-${BUILDKITE_BUILD_ID}.tar.gz eos" + command: | + git clone ${BUILDKITE_PULL_REQUEST_REPO:-$BUILDKITE_REPO} + cd eos + git checkout ${BUILDKITE_COMMIT} + git submodule update --init --recursive + ./scripts/eosio_build.sh -y -P -m + tar -pczf build.tar.gz build + [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo '+++ :no_entry: ERROR: No build.tar.gz artifact found!' && exit 1) plugins: chef/anka#v0.4.4: no-volume: true @@ -347,23 +352,9 @@ steps: - label: ":centos: CentOS 7 Package Builder" command: | - echo "--- :arrow_down: Downloading build directory" - echo \"--- :arrow_down: Downloading Build Directory\" && buildkite-agent artifact download "build.tar.gz" . --step ":centos: CentOS 7 Build" - tar -zxf build.tar.gz - echo "+++ :microscope: Starting package build" - yum install -y rpm-build - mkdir -p /root/rpmbuild/BUILD - mkdir -p /root/rpmbuild/BUILDROOT - mkdir -p /root/rpmbuild/RPMS - mkdir -p /root/rpmbuild/SOURCES - mkdir -p /root/rpmbuild/SPECS - mkdir -p /root/rpmbuild/SRPMS - cd /data/job/build/packages - bash generate_package.sh rpm + ./scripts/package-builder.sh ':centos: CentOS 7 Build' agents: queue: "automation-large-builder-fleet" - artifact_paths: - - "build/packages/*.rpm" plugins: ecr#v1.1.4: login: true @@ -382,17 +373,10 @@ steps: timeout: 60 - command: | # Ubuntu 16.04 Package Builder - echo "--- :arrow_down: Downloading build directory" - echo \"--- :arrow_down: Downloading Build Directory\" && buildkite-agent artifact download "build.tar.gz" . --step ":ubuntu: Ubuntu 16.04 Build" - tar -zxf build.tar.gz - echo "+++ :microscope: Starting package build" - cd /data/job/build/packages - bash generate_package.sh deb + ./scripts/package-builder.sh ':ubuntu: Ubuntu 16.04 Build' label: ":ubuntu: Ubuntu 16.04 Package Builder" agents: queue: "automation-large-builder-fleet" - artifact_paths: - - "build/packages/*.deb" plugins: ecr#v1.1.4: login: true @@ -411,17 +395,10 @@ steps: timeout: 60 - command: | # Ubuntu 18.04 Package Builder - echo "--- :arrow_down: Downloading build directory" - echo \"--- :arrow_down: Downloading Build Directory\" && buildkite-agent artifact download "build.tar.gz" . --step ":ubuntu: Ubuntu 18.04 Build" - tar -zxf build.tar.gz - echo "+++ :microscope: Starting package build" - cd /data/job/build/packages - bash generate_package.sh deb + ./scripts/package-builder.sh ':ubuntu: Ubuntu 18.04 Build' label: ":ubuntu: Ubuntu 18.04 Package Builder" agents: queue: "automation-large-builder-fleet" - artifact_paths: - - "build/packages/*.deb" plugins: ecr#v1.1.4: login: true @@ -440,11 +417,10 @@ steps: timeout: 60 - label: ":darwin: Mojave Package Builder" - command: - - "tar -xzf /Network/NAS/MAC_FLEET/BUILDKITE/artifacts/${ANKA_MOJAVE_TEMPLATE}-${BUILDKITE_PIPELINE_SLUG}-${BUILDKITE_BUILD_ID}.tar.gz" - - "cd eos/build/packages && bash generate_package.sh brew" - - "cd eos && buildkite-agent artifact upload build/packages/*.tar.gz" - - "cd eos && buildkite-agent artifact upload build/packages/*.rb" + command: | + [[ -d eos ]] && cd eos + ln -s "$(pwd)" /data/job + ./scripts/package-builder.sh ':darwin: [Darwin] Mojave Build' agents: - "queue=mac-anka-node-fleet" plugins: @@ -457,13 +433,13 @@ steps: always-pull: true debug: true wait-network: true - timeout: 120 + timeout: 60 - wait - command: | # Brew Updater echo "--- :arrow_down: Downloading brew files" - echo \"--- :arrow_down: Downloading Build Directory\" && buildkite-agent artifact download "build/packages/eosio.rb" . --step ":darwin: Mojave Package Builder" + buildkite-agent artifact download "build/packages/eosio.rb" . --step ":darwin: Mojave Package Builder" label: ":darwin: Brew Updater" agents: queue: "automation-large-builder-fleet" diff --git a/scripts/package-builder.sh b/scripts/package-builder.sh new file mode 100755 index 00000000000..eb3d141d795 --- /dev/null +++ b/scripts/package-builder.sh @@ -0,0 +1,49 @@ +#!/bin/bash +set -e # exit on failure of any "simple" command (excludes &&, ||, or | chains) +echo '+++ :evergreen_tree: Configuring Environment' +[[ "$BUILD_STEP" == '' ]] && BUILD_STEP="$1" +[[ "$BUILD_STEP" == '' ]] && (echo '+++ :no_entry: ERROR: Build step name must be given as BUILD_STEP or argument 1!' && exit 1) +if [[ "$(uname)" == 'Darwin' ]]; then + echo 'Darwin family detected, building for brew.' + ARTIFACT='build/packages/*.rb;build/packages/*.tar.gz' + PACKAGE_TYPE='brew' +else + . /etc/os-release + if [[ "$ID_LIKE" == 'rhel fedora' ]]; then + echo 'Fedora family detected, building for RPM.' + ARTIFACT='build/packages/*.rpm' + PACKAGE_TYPE='brew' + mkdir -p /root/rpmbuild/BUILD + mkdir -p /root/rpmbuild/BUILDROOT + mkdir -p /root/rpmbuild/RPMS + mkdir -p /root/rpmbuild/SOURCES + mkdir -p /root/rpmbuild/SPECS + mkdir -p /root/rpmbuild/SRPMS + yum install -y rpm-build + elif [[ "$ID_LIKE" == 'debian' ]]; then + echo 'Debian family detected, building for dpkg.' + ARTIFACT='build/packages/*.deb' + PACKAGE_TYPE='deb' + else + echo '+++ :no_entry: ERROR: Could not determine which operating system this script is running on!' + echo '$ uname' + uname + echo '$ echo $ID_LIKE' + echo $ID_LIKE + echo '$ cat /etc/os-release' + cat /etc/os-release + echo 'Exiting...' + exit 1 + fi +fi +cd /data/job/build/packages +echo "+++ :arrow_down: Downloading Build Directory" +buildkite-agent artifact download build.tar.gz . --step "$BUILD_STEP" +echo "+++ :compression: Extracting Build Directory" +tar -zxf build.tar.gz +echo "+++ :package: Starting Package Build" +generate_package.sh "$PACKAGE_TYPE" +echo '+++ :arrow_up: Uploading Artifacts' +cd /data/job +buildkite-agent artifact upload \"$ARTIFACT\" +echo "+++ :white_check_mark: Done." \ No newline at end of file From eade2bad34385a4d086e6c601132f35e44e70eab Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Mon, 13 May 2019 14:54:45 -0400 Subject: [PATCH 04/40] Added environment variable that skips mac steps --- .buildkite/pipeline.yml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index 4aed6c7c46f..7e4397a6431 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -5,6 +5,8 @@ env: MAC_TAG: "eosio_2-4" steps: + - wait + - label: ":darwin: Ensure Mojave Anka Template Dependency Tag/Layer Exists" command: - "git clone git@github.com:EOSIO/mac-anka-fleet.git" @@ -20,6 +22,7 @@ steps: TAG_COMMANDS: "./scripts/eosio_build.sh -y -P -m" # CLONED_REPO_DIR IS REQUIRED and is where the repo is always cloned into PROJECT_TAG: "${MAC_TAG}" timeout: 60 + skip: $SKIP_MOJAVE - wait @@ -46,6 +49,7 @@ steps: agents: - "queue=mac-anka-large-node-fleet" timeout: 120 + skip: $SKIP_MOJAVE # - label: ":aws: Amazon Linux 2 Build" # command: @@ -152,6 +156,7 @@ steps: # debug: true # wait-network: true # timeout: 120 + # skip: $SKIP_MOJAVE # - label: ":darwin: [Darwin] Mojave NP Tests" # command: @@ -170,6 +175,7 @@ steps: # debug: true # wait-network: true # timeout: 120 + # skip: $SKIP_MOJAVE # # Amazon Linux 2 # - label: ":aws: Amazon Linux 2 Tests" @@ -434,6 +440,7 @@ steps: debug: true wait-network: true timeout: 60 + skip: $SKIP_MOJAVE - wait @@ -446,6 +453,7 @@ steps: artifact_paths: - "build/packages/eosio.rb" timeout: 5 + skip: $SKIP_MOJAVE - command: | # Git Submodule Regression Check echo "+++ :microscope: Running git submodule regression check" && \ From 27791efa3b02691a6a042be500f915097f75b451 Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Mon, 13 May 2019 15:20:51 -0400 Subject: [PATCH 05/40] Fix path error --- scripts/package-builder.sh | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/scripts/package-builder.sh b/scripts/package-builder.sh index eb3d141d795..f59bff51630 100755 --- a/scripts/package-builder.sh +++ b/scripts/package-builder.sh @@ -36,14 +36,15 @@ else exit 1 fi fi -cd /data/job/build/packages echo "+++ :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step "$BUILD_STEP" echo "+++ :compression: Extracting Build Directory" +[[ -d build ]] && rm -rf build tar -zxf build.tar.gz echo "+++ :package: Starting Package Build" +cd build/packages generate_package.sh "$PACKAGE_TYPE" echo '+++ :arrow_up: Uploading Artifacts' -cd /data/job +cd ../.. buildkite-agent artifact upload \"$ARTIFACT\" echo "+++ :white_check_mark: Done." \ No newline at end of file From 6dd7a9afb6771b5e2eaa836da1c8aa858d57de85 Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Mon, 13 May 2019 15:35:56 -0400 Subject: [PATCH 06/40] Fix relative path to generate_package.sh --- scripts/package-builder.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/package-builder.sh b/scripts/package-builder.sh index f59bff51630..5a83b9d4b9b 100755 --- a/scripts/package-builder.sh +++ b/scripts/package-builder.sh @@ -43,7 +43,7 @@ echo "+++ :compression: Extracting Build Directory" tar -zxf build.tar.gz echo "+++ :package: Starting Package Build" cd build/packages -generate_package.sh "$PACKAGE_TYPE" +./generate_package.sh "$PACKAGE_TYPE" echo '+++ :arrow_up: Uploading Artifacts' cd ../.. buildkite-agent artifact upload \"$ARTIFACT\" From fee83de0be43eaf4240c48decba6c60996695100 Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Mon, 13 May 2019 16:11:01 -0400 Subject: [PATCH 07/40] Fix permissions issue --- scripts/package-builder.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/package-builder.sh b/scripts/package-builder.sh index 5a83b9d4b9b..13f40aef2f7 100755 --- a/scripts/package-builder.sh +++ b/scripts/package-builder.sh @@ -43,6 +43,7 @@ echo "+++ :compression: Extracting Build Directory" tar -zxf build.tar.gz echo "+++ :package: Starting Package Build" cd build/packages +chmod 755 ./*.sh ./generate_package.sh "$PACKAGE_TYPE" echo '+++ :arrow_up: Uploading Artifacts' cd ../.. From 90dae79b1cbdb3f0887882affed4392fa4524df7 Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Mon, 13 May 2019 17:52:16 -0400 Subject: [PATCH 08/40] Fixed copy-pasta error where Fedora-like operating systems built for brew instead of RPM --- scripts/package-builder.sh | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/scripts/package-builder.sh b/scripts/package-builder.sh index 13f40aef2f7..ff4e936b48c 100755 --- a/scripts/package-builder.sh +++ b/scripts/package-builder.sh @@ -12,7 +12,7 @@ else if [[ "$ID_LIKE" == 'rhel fedora' ]]; then echo 'Fedora family detected, building for RPM.' ARTIFACT='build/packages/*.rpm' - PACKAGE_TYPE='brew' + PACKAGE_TYPE='rpm' mkdir -p /root/rpmbuild/BUILD mkdir -p /root/rpmbuild/BUILDROOT mkdir -p /root/rpmbuild/RPMS @@ -28,8 +28,7 @@ else echo '+++ :no_entry: ERROR: Could not determine which operating system this script is running on!' echo '$ uname' uname - echo '$ echo $ID_LIKE' - echo $ID_LIKE + echo "ID_LIKE=\"$ID_LIKE\"" echo '$ cat /etc/os-release' cat /etc/os-release echo 'Exiting...' From a4eab234456fb14e4e7483cd93dc43327f0c6ceb Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Mon, 13 May 2019 18:05:16 -0400 Subject: [PATCH 09/40] Added Nodeos "Version Label" Integration Test --- .buildkite/pipeline.yml | 203 ++++++++++++++++++++-------------------- tests/CMakeLists.txt | 2 + tests/version-label.sh | 69 ++++++++++++++ 3 files changed, 175 insertions(+), 99 deletions(-) create mode 100755 tests/version-label.sh diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index 7e4397a6431..02ed1cef3b9 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -138,25 +138,26 @@ steps: # - wait - # # MacOS Mojave - # - label: ":darwin: [Darwin] Mojave Tests" - # command: - # - "tar -xzf /Network/NAS/MAC_FLEET/BUILDKITE/artifacts/${ANKA_MOJAVE_TEMPLATE}-${BUILDKITE_PIPELINE_SLUG}-${BUILDKITE_BUILD_ID}.tar.gz" - # - "cd eos && ./scripts/parallel-test.sh" - # agents: - # - "queue=mac-anka-node-fleet" - # plugins: - # chef/anka#v0.4.4: - # no-volume: true - # inherit-environment-vars: true - # bash-interactive: true - # vm-name: $ANKA_MOJAVE_TEMPLATE - # vm-registry-tag: "${ANKA_TEMPLATE_TAG}::${MAC_TAG}" - # always-pull: true - # debug: true - # wait-network: true - # timeout: 120 - # skip: $SKIP_MOJAVE + # MacOS Mojave + - label: ":darwin: [Darwin] Mojave Tests" + command: | + cd eos + buildkite-agent artifact download build.tar.gz . --step ":darwin: [Darwin] Mojave Build" + ./scripts/parallel-test.sh + agents: + - "queue=mac-anka-node-fleet" + plugins: + chef/anka#v0.4.4: + no-volume: true + inherit-environment-vars: true + bash-interactive: true + vm-name: $ANKA_MOJAVE_TEMPLATE + vm-registry-tag: "${ANKA_TEMPLATE_TAG}::${MAC_TAG}" + always-pull: true + debug: true + wait-network: true + timeout: 120 + skip: $SKIP_MOJAVE # - label: ":darwin: [Darwin] Mojave NP Tests" # command: @@ -177,26 +178,27 @@ steps: # timeout: 120 # skip: $SKIP_MOJAVE - # # Amazon Linux 2 - # - label: ":aws: Amazon Linux 2 Tests" - # command: - # - "echo \"--- :arrow_down: Downloading Build Directory\" && buildkite-agent artifact download \"build.tar.gz\" . --step \":aws: Amazon Linux 2 Build\"" - # - "./scripts/parallel-test.sh" - # agents: - # queue: "automation-large-builder-fleet" - # plugins: - # ecr#v1.1.4: - # login: true - # account_ids: "436617320021" - # no-include-email: true - # region: "us-west-2" - # docker#v3.2.0: - # shell: ["/bin/bash", "-i", "-e", "-c"] - # debug: true - # image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:amazonlinux2_2-4" - # propagate-environment: true - # workdir: /data/job - # timeout: 60 + # Amazon Linux 2 + - label: ":aws: Amazon Linux 2 Tests" + command: | + echo "--- :arrow_down: Downloading Build Directory" + buildkite-agent artifact download build.tar.gz . --step ":aws: Amazon Linux 2 Build" + ./scripts/parallel-test.sh + agents: + queue: "automation-large-builder-fleet" + plugins: + ecr#v1.1.4: + login: true + account_ids: "436617320021" + no-include-email: true + region: "us-west-2" + docker#v3.2.0: + shell: ["/bin/bash", "-i", "-e", "-c"] + debug: true + image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:amazonlinux2_2-4" + propagate-environment: true + workdir: /data/job + timeout: 60 # - label: ":aws: Amazon Linux 2 NP Tests" # command: @@ -219,26 +221,27 @@ steps: # workdir: /data/job # timeout: 60 - # # CentOS - # - label: ":centos: CentOS 7 Tests" - # command: - # - "echo \"--- :arrow_down: Downloading Build Directory\" && buildkite-agent artifact download \"build.tar.gz\" . --step \":centos: CentOS 7 Build\"" - # - "./scripts/parallel-test.sh" - # agents: - # queue: "automation-large-builder-fleet" - # plugins: - # ecr#v1.1.4: - # login: true - # account_ids: "436617320021" - # no-include-email: true - # region: "us-west-2" - # docker#v3.2.0: - # shell: ["/bin/bash", "-i", "-e", "-c"] - # debug: true - # image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:centos7_2-4" - # propagate-environment: true - # workdir: /data/job - # timeout: 60 + # CentOS + - label: ":centos: CentOS 7 Tests" + command: | + echo "--- :arrow_down: Downloading Build Directory" + buildkite-agent artifact download build.tar.gz . --step ":centos: CentOS 7 Build" + ./scripts/parallel-test.sh + agents: + queue: "automation-large-builder-fleet" + plugins: + ecr#v1.1.4: + login: true + account_ids: "436617320021" + no-include-email: true + region: "us-west-2" + docker#v3.2.0: + shell: ["/bin/bash", "-i", "-e", "-c"] + debug: true + image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:centos7_2-4" + propagate-environment: true + workdir: /data/job + timeout: 60 # - label: ":centos: CentOS 7 NP Tests" # command: @@ -260,26 +263,27 @@ steps: # workdir: /data/job # timeout: 60 - # # Ubuntu 16.04 - # - label: ":ubuntu: Ubuntu 16.04 Tests" - # command: - # - "echo \"--- :arrow_down: Downloading Build Directory\" && buildkite-agent artifact download \"build.tar.gz\" . --step \":ubuntu: Ubuntu 16.04 Build\"" - # - "./scripts/parallel-test.sh" - # agents: - # queue: "automation-large-builder-fleet" - # plugins: - # ecr#v1.1.4: - # login: true - # account_ids: "436617320021" - # no-include-email: true - # region: "us-west-2" - # docker#v3.2.0: - # shell: ["/bin/bash", "-i", "-e", "-c"] - # debug: true - # image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:ubuntu16_2-4" - # propagate-environment: true - # workdir: /data/job - # timeout: 60 + # Ubuntu 16.04 + - label: ":ubuntu: Ubuntu 16.04 Tests" + command: | + echo "--- :arrow_down: Downloading Build Directory" + buildkite-agent artifact download build.tar.gz . --step ":ubuntu: Ubuntu 16.04 Build" + ./scripts/parallel-test.sh + agents: + queue: "automation-large-builder-fleet" + plugins: + ecr#v1.1.4: + login: true + account_ids: "436617320021" + no-include-email: true + region: "us-west-2" + docker#v3.2.0: + shell: ["/bin/bash", "-i", "-e", "-c"] + debug: true + image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:ubuntu16_2-4" + propagate-environment: true + workdir: /data/job + timeout: 60 # - label: ":ubuntu: Ubuntu 16.04 NP Tests" # command: @@ -301,26 +305,27 @@ steps: # workdir: /data/job # timeout: 60 - # # Ubuntu 18.04 - # - label: ":ubuntu: Ubuntu 18.04 Tests" - # command: - # - "echo \"--- :arrow_down: Downloading Build Directory\" && buildkite-agent artifact download \"build.tar.gz\" . --step \":ubuntu: Ubuntu 18.04 Build\"" - # - "./scripts/parallel-test.sh" - # agents: - # queue: "automation-large-builder-fleet" - # plugins: - # ecr#v1.1.4: - # login: true - # account_ids: "436617320021" - # no-include-email: true - # region: "us-west-2" - # docker#v3.2.0: - # shell: ["/bin/bash", "-i", "-e", "-c"] - # debug: true - # image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:ubuntu18_2-4" - # propagate-environment: true - # workdir: /data/job - # timeout: 60 + # Ubuntu 18.04 + - label: ":ubuntu: Ubuntu 18.04 Tests" + command: | + echo "--- :arrow_down: Downloading Build Directory" + buildkite-agent artifact download build.tar.gz . --step ":ubuntu: Ubuntu 18.04 Build" + ./scripts/parallel-test.sh + agents: + queue: "automation-large-builder-fleet" + plugins: + ecr#v1.1.4: + login: true + account_ids: "436617320021" + no-include-email: true + region: "us-west-2" + docker#v3.2.0: + shell: ["/bin/bash", "-i", "-e", "-c"] + debug: true + image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:ubuntu18_2-4" + propagate-environment: true + workdir: /data/job + timeout: 60 # - label: ":ubuntu: Ubuntu 18.04 NP Tests" # command: diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index cf7a9e85c76..0d6b8f78045 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -49,6 +49,7 @@ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/validate-dirty-db.py ${CMAKE_CURRENT_ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/launcher_test.py ${CMAKE_CURRENT_BINARY_DIR}/launcher_test.py COPYONLY) configure_file(${CMAKE_CURRENT_SOURCE_DIR}/db_modes_test.sh ${CMAKE_CURRENT_BINARY_DIR}/db_modes_test.sh COPYONLY) configure_file(${CMAKE_CURRENT_SOURCE_DIR}/prod_preactivation_test.py ${CMAKE_CURRENT_BINARY_DIR}/prod_preactivation_test.py COPYONLY) +configure_file(${CMAKE_CURRENT_SOURCE_DIR}/version-label.sh ${CMAKE_CURRENT_BINARY_DIR}/version-label.sh COPYONLY) #To run plugin_test with all log from blockchain displayed, put --verbose after --, i.e. plugin_test -- --verbose add_test(NAME plugin_test COMMAND plugin_test --report_level=detailed --color_output) @@ -86,6 +87,7 @@ set_property(TEST validate_dirty_db_test PROPERTY LABELS nonparallelizable_tests add_test(NAME launcher_test COMMAND tests/launcher_test.py -v --clean-run --dump-error-detail WORKING_DIRECTORY ${CMAKE_BINARY_DIR}) set_property(TEST launcher_test PROPERTY LABELS nonparallelizable_tests) add_test(NAME db_modes_test COMMAND tests/db_modes_test.sh WORKING_DIRECTORY ${CMAKE_BINARY_DIR}) +add_test(NAME version-label-test COMMAND tests/version-label.sh WORKING_DIRECTORY ${CMAKE_BINARY_DIR}) # Long running tests add_test(NAME nodeos_sanity_lr_test COMMAND tests/nodeos_run_test.py -v --sanity-test --clean-run --dump-error-detail WORKING_DIRECTORY ${CMAKE_BINARY_DIR}) diff --git a/tests/version-label.sh b/tests/version-label.sh new file mode 100755 index 00000000000..366de2e4305 --- /dev/null +++ b/tests/version-label.sh @@ -0,0 +1,69 @@ +#!/bin/bash +set -e # exit on failure of any "simple" command (excludes &&, ||, or | chains) +# The purpose of this test is to ensure that the output of the "nodeos --version" command matches the +# If the environment variable BUILDKITE_TAG is empty or unset, this test will echo success +echo '##### Nodeos Version Label Test #####' +if [[ "$BUILDKITE_TAG" == '' || "$BUILDKITE" != 'true' ]]; then + echo 'This test is only run in Buildkite against tagged builds.' + [[ "$BUILDKITE" != 'true' ]] && echo 'This is not Buildkite.' + [[ "$BUILDKITE_TAG" == '' ]] && echo 'This is not a tagged build.' + echo 'Exiting...' + exit 0 +fi +echo 'Tagged build detected, running test.' +# orient ourselves +[[ "$EOSIO_ROOT" == '' ]] && EOSIO_ROOT=$(echo $(pwd)/ | grep -ioe '.*/eos/') +[[ "$EOSIO_ROOT" == '' ]] && EOSIO_ROOT=$(echo $(pwd)/ | grep -ioe '.*/EOSIO/eosio/') +[[ "$EOSIO_ROOT" == '' ]] && EOSIO_ROOT=$(echo $(pwd)/ | grep -ioe '.*/build/' | sed 's,/build/,,') +# determine expected value +CMAKE_CACHE="$EOSIO_ROOT/build/CMakeCache.txt" +CMAKE_LISTS="$EOSIO_ROOT/CMakeLists.txt" +if [[ -f "$CMAKE_CACHE" && $(cat "$CMAKE_CACHE" | grep -c 'DOXY_EOS_VERSION') > 0 ]]; then + EXPECTED=$(cat "$CMAKE_CACHE" | grep 'DOXY_EOS_VERSION' | cut -d '=' -f 2) +elif [[ -f "$CMAKE_LISTS" ]]; then + export $(cat $CMAKE_LISTS | grep -ie 'set *( *VERSION_MAJOR' | cut -d '(' -f 2 | cut -d ')' -f 1 | awk '{print $1"="$2}') + export $(cat $CMAKE_LISTS | grep -ie 'set *( *VERSION_MINOR' | cut -d '(' -f 2 | cut -d ')' -f 1 | awk '{print $1"="$2}') + export $(cat $CMAKE_LISTS | grep -ie 'set *( *VERSION_PATCH' | cut -d '(' -f 2 | cut -d ')' -f 1 | awk '{print $1"="$2}') + if [[ $(cat $CMAKE_LISTS | grep -ice 'set *( *VERSION_SUFFIX') > 0 ]]; then + export $(cat $CMAKE_LISTS | grep -ie 'set *( *VERSION_SUFFIX' | cut -d '(' -f 2 | cut -d ')' -f 1 | awk '{print $1"="$2}') + export $(echo "$(cat $CMAKE_LISTS | grep -ie 'set *( *VERSION_FULL.*VERSION_SUFFIX' | cut -d '(' -f 2 | cut -d ')' -f 1 | awk '{print $1"="$2}')" | envsubst | tr -d '"') + else + export $(echo "$(cat $CMAKE_LISTS | grep -ie 'set *( *VERSION_FULL' | grep -ive 'VERSION_SUFFIX' | cut -d '(' -f 2 | cut -d ')' -f 1 | awk '{print $1"="$2}')" | envsubst | tr -d '"') + fi + EXPECTED="v$VERSION_FULL" +fi +# fail if no expected value was found +if [[ "$EXPECTED" == '' ]]; then + echo 'ERROR: Could not determine expected value for version label!' + set +e + echo "EOSIO_ROOT=\"$EOSIO_ROOT\"" + echo "CMAKE_CACHE=\"$CMAKE_CACHE\"" + echo "CMAKE_LISTS=\"$CMAKE_LISTS\"" + echo '' + echo "VERSION_MAJOR=\"$VERSION_MAJOR\"" + echo "VERSION_MINOR=\"$VERSION_MINOR\"" + echo "VERSION_PATCH=\"$VERSION_PATCH\"" + echo "VERSION_SUFFIX=\"$VERSION_SUFFIX\"" + echo "VERSION_FULL=\"$VERSION_FULL\"" + echo '' + echo '$ cat "$CMAKE_CACHE" | grep "DOXY_EOS_VERSION"' + cat "$CMAKE_CACHE" | grep "DOXY_EOS_VERSION" + echo '$ pwd' + pwd + echo '$ ls "$EOSIO_ROOT"' + ls "$EOSIO_ROOT" + echo '$ ls "$EOSIO_ROOT/build"' + ls "$EOSIO_ROOT/build" + exit 1 +fi +# test nodeos version +ACTUAL=$($EOSIO_ROOT/build/bin/nodeos --version) || : # nodeos currently returns -1 for --version +# check +echo "Expecting \"$EXPECTED\"..." +if [[ "$EXPECTED" == "$ACTUAL" ]]; then + echo 'Passed with \"$ACTUAL\".' + exit 0 +fi +echo 'Failed!' +echo "\"$EXPECTED\" != \"$ACTUAL\"" +exit 1 \ No newline at end of file From e764701ae9d0ea28f47fa58ceb8f5967efd84f79 Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Mon, 13 May 2019 18:12:35 -0400 Subject: [PATCH 10/40] It's really hard to override BUILDKITE_TAG --- .buildkite/pipeline.yml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index 02ed1cef3b9..1928f06ccff 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -136,13 +136,14 @@ steps: workdir: /data/job timeout: 120 - # - wait + - wait # MacOS Mojave - label: ":darwin: [Darwin] Mojave Tests" command: | cd eos buildkite-agent artifact download build.tar.gz . --step ":darwin: [Darwin] Mojave Build" + export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: - "queue=mac-anka-node-fleet" @@ -183,6 +184,7 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":aws: Amazon Linux 2 Build" + export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" @@ -226,6 +228,7 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":centos: CentOS 7 Build" + export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" @@ -268,6 +271,7 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":ubuntu: Ubuntu 16.04 Build" + export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" @@ -310,6 +314,7 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":ubuntu: Ubuntu 18.04 Build" + export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" From 5feb4b94da288e192dc0b114a749c2b23f8ca4e1 Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Mon, 13 May 2019 18:24:25 -0400 Subject: [PATCH 11/40] Added debug code --- scripts/package-builder.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/scripts/package-builder.sh b/scripts/package-builder.sh index ff4e936b48c..72abccdf3a1 100755 --- a/scripts/package-builder.sh +++ b/scripts/package-builder.sh @@ -43,8 +43,11 @@ tar -zxf build.tar.gz echo "+++ :package: Starting Package Build" cd build/packages chmod 755 ./*.sh +[[ "$DEBUG" == 'true' ]] && (echo '$ pwd'; pwd; echo '$ ls'; ls) ./generate_package.sh "$PACKAGE_TYPE" +[[ "$DEBUG" == 'true' ]] && (echo '$ pwd'; pwd; echo '$ ls'; ls) echo '+++ :arrow_up: Uploading Artifacts' cd ../.. +[[ "$DEBUG" == 'true' ]] && (echo '$ pwd'; pwd; echo '$ ls'; ls) buildkite-agent artifact upload \"$ARTIFACT\" echo "+++ :white_check_mark: Done." \ No newline at end of file From fb2e605b20b54633d033f76ac2a5d5e2e951a48a Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Mon, 13 May 2019 18:59:06 -0400 Subject: [PATCH 12/40] Added ability to skip tests, for testing purposes --- .buildkite/pipeline.yml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index 1928f06ccff..2198740fbbd 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -137,6 +137,7 @@ steps: timeout: 120 - wait + skip: $SKIP_TESTS # MacOS Mojave - label: ":darwin: [Darwin] Mojave Tests" @@ -158,7 +159,7 @@ steps: debug: true wait-network: true timeout: 120 - skip: $SKIP_MOJAVE + skip: $SKIP_MOJAVE$SKIP_TESTS # - label: ":darwin: [Darwin] Mojave NP Tests" # command: @@ -201,6 +202,7 @@ steps: propagate-environment: true workdir: /data/job timeout: 60 + skip: $SKIP_TESTS # - label: ":aws: Amazon Linux 2 NP Tests" # command: @@ -245,6 +247,7 @@ steps: propagate-environment: true workdir: /data/job timeout: 60 + skip: $SKIP_TESTS # - label: ":centos: CentOS 7 NP Tests" # command: @@ -288,6 +291,7 @@ steps: propagate-environment: true workdir: /data/job timeout: 60 + skip: $SKIP_TESTS # - label: ":ubuntu: Ubuntu 16.04 NP Tests" # command: @@ -331,6 +335,7 @@ steps: propagate-environment: true workdir: /data/job timeout: 60 + skip: $SKIP_TESTS # - label: ":ubuntu: Ubuntu 18.04 NP Tests" # command: From 63ef4ab229de10efa5d71701e6e1d9fddad5460c Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Mon, 13 May 2019 18:59:49 -0400 Subject: [PATCH 13/40] Reorganized print statements for more effective debugging --- tests/version-label.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tests/version-label.sh b/tests/version-label.sh index 366de2e4305..7b9d56e2203 100755 --- a/tests/version-label.sh +++ b/tests/version-label.sh @@ -15,6 +15,7 @@ echo 'Tagged build detected, running test.' [[ "$EOSIO_ROOT" == '' ]] && EOSIO_ROOT=$(echo $(pwd)/ | grep -ioe '.*/eos/') [[ "$EOSIO_ROOT" == '' ]] && EOSIO_ROOT=$(echo $(pwd)/ | grep -ioe '.*/EOSIO/eosio/') [[ "$EOSIO_ROOT" == '' ]] && EOSIO_ROOT=$(echo $(pwd)/ | grep -ioe '.*/build/' | sed 's,/build/,,') +echo "Using EOSIO_ROOT=\"$EOSIO_ROOT\"." # determine expected value CMAKE_CACHE="$EOSIO_ROOT/build/CMakeCache.txt" CMAKE_LISTS="$EOSIO_ROOT/CMakeLists.txt" @@ -56,10 +57,10 @@ if [[ "$EXPECTED" == '' ]]; then ls "$EOSIO_ROOT/build" exit 1 fi +echo "Expecting \"$EXPECTED\"..." # test nodeos version ACTUAL=$($EOSIO_ROOT/build/bin/nodeos --version) || : # nodeos currently returns -1 for --version # check -echo "Expecting \"$EXPECTED\"..." if [[ "$EXPECTED" == "$ACTUAL" ]]; then echo 'Passed with \"$ACTUAL\".' exit 0 From 817afd4463d9c2fa2e2dda92010dcf2139ef5472 Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Mon, 13 May 2019 19:00:25 -0400 Subject: [PATCH 14/40] Package builder fails if artifacts are not found --- scripts/package-builder.sh | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/scripts/package-builder.sh b/scripts/package-builder.sh index 72abccdf3a1..593258a1abc 100755 --- a/scripts/package-builder.sh +++ b/scripts/package-builder.sh @@ -50,4 +50,14 @@ echo '+++ :arrow_up: Uploading Artifacts' cd ../.. [[ "$DEBUG" == 'true' ]] && (echo '$ pwd'; pwd; echo '$ ls'; ls) buildkite-agent artifact upload \"$ARTIFACT\" +for A in $(echo $ARTIFACT | tr ';' ' '); do + if [[ $(ls $A | grep -c '') ]]; then + echo "+++ :no_entry: ERROR: Expected artifact \"$A\" not found!" + echo '$ pwd' + pwd + echo '$ ls' + ls + exit 1 + fi +done echo "+++ :white_check_mark: Done." \ No newline at end of file From 1b4561305af0c41f5bb5c6254239a93f1daa372a Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Mon, 13 May 2019 19:02:50 -0400 Subject: [PATCH 15/40] Can't skip wait steps --- .buildkite/pipeline.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index 2198740fbbd..caa88592787 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -137,7 +137,6 @@ steps: timeout: 120 - wait - skip: $SKIP_TESTS # MacOS Mojave - label: ":darwin: [Darwin] Mojave Tests" From 26c0eea1bd1755336bdfb3a9f15ca59bdede5912 Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Mon, 13 May 2019 19:31:19 -0400 Subject: [PATCH 16/40] Bug fixes --- scripts/package-builder.sh | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/scripts/package-builder.sh b/scripts/package-builder.sh index 593258a1abc..ad865336f00 100755 --- a/scripts/package-builder.sh +++ b/scripts/package-builder.sh @@ -5,13 +5,13 @@ echo '+++ :evergreen_tree: Configuring Environment' [[ "$BUILD_STEP" == '' ]] && (echo '+++ :no_entry: ERROR: Build step name must be given as BUILD_STEP or argument 1!' && exit 1) if [[ "$(uname)" == 'Darwin' ]]; then echo 'Darwin family detected, building for brew.' - ARTIFACT='build/packages/*.rb;build/packages/*.tar.gz' + ARTIFACT='"build/packages/*.rb;build/packages/*.tar.gz"' PACKAGE_TYPE='brew' else . /etc/os-release if [[ "$ID_LIKE" == 'rhel fedora' ]]; then echo 'Fedora family detected, building for RPM.' - ARTIFACT='build/packages/*.rpm' + ARTIFACT='"build/packages/*.rpm"' PACKAGE_TYPE='rpm' mkdir -p /root/rpmbuild/BUILD mkdir -p /root/rpmbuild/BUILDROOT @@ -22,7 +22,7 @@ else yum install -y rpm-build elif [[ "$ID_LIKE" == 'debian' ]]; then echo 'Debian family detected, building for dpkg.' - ARTIFACT='build/packages/*.deb' + ARTIFACT='"build/packages/*.deb"' PACKAGE_TYPE='deb' else echo '+++ :no_entry: ERROR: Could not determine which operating system this script is running on!' @@ -47,11 +47,10 @@ chmod 755 ./*.sh ./generate_package.sh "$PACKAGE_TYPE" [[ "$DEBUG" == 'true' ]] && (echo '$ pwd'; pwd; echo '$ ls'; ls) echo '+++ :arrow_up: Uploading Artifacts' -cd ../.. [[ "$DEBUG" == 'true' ]] && (echo '$ pwd'; pwd; echo '$ ls'; ls) -buildkite-agent artifact upload \"$ARTIFACT\" +buildkite-agent artifact upload $ARTIFACT for A in $(echo $ARTIFACT | tr ';' ' '); do - if [[ $(ls $A | grep -c '') ]]; then + if [[ $(ls $A | grep -c '') == 0 ]]; then echo "+++ :no_entry: ERROR: Expected artifact \"$A\" not found!" echo '$ pwd' pwd From 76ae9cdd30ffd080304ec098ae8640065486d138 Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Mon, 13 May 2019 19:54:54 -0400 Subject: [PATCH 17/40] Fixes to bug fixes --- scripts/package-builder.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/package-builder.sh b/scripts/package-builder.sh index ad865336f00..50bccb8b638 100755 --- a/scripts/package-builder.sh +++ b/scripts/package-builder.sh @@ -47,6 +47,7 @@ chmod 755 ./*.sh ./generate_package.sh "$PACKAGE_TYPE" [[ "$DEBUG" == 'true' ]] && (echo '$ pwd'; pwd; echo '$ ls'; ls) echo '+++ :arrow_up: Uploading Artifacts' +cd ../.. [[ "$DEBUG" == 'true' ]] && (echo '$ pwd'; pwd; echo '$ ls'; ls) buildkite-agent artifact upload $ARTIFACT for A in $(echo $ARTIFACT | tr ';' ' '); do From 4f3014c1943edd407692ecd7cfb680cbe97175f8 Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Mon, 13 May 2019 20:03:08 -0400 Subject: [PATCH 18/40] Removed "set -e", added print statements --- tests/version-label.sh | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tests/version-label.sh b/tests/version-label.sh index 7b9d56e2203..848b206d867 100755 --- a/tests/version-label.sh +++ b/tests/version-label.sh @@ -1,5 +1,4 @@ #!/bin/bash -set -e # exit on failure of any "simple" command (excludes &&, ||, or | chains) # The purpose of this test is to ensure that the output of the "nodeos --version" command matches the # If the environment variable BUILDKITE_TAG is empty or unset, this test will echo success echo '##### Nodeos Version Label Test #####' @@ -20,15 +19,19 @@ echo "Using EOSIO_ROOT=\"$EOSIO_ROOT\"." CMAKE_CACHE="$EOSIO_ROOT/build/CMakeCache.txt" CMAKE_LISTS="$EOSIO_ROOT/CMakeLists.txt" if [[ -f "$CMAKE_CACHE" && $(cat "$CMAKE_CACHE" | grep -c 'DOXY_EOS_VERSION') > 0 ]]; then + echo "Parsing \"$CMAKE_CACHE\"..." EXPECTED=$(cat "$CMAKE_CACHE" | grep 'DOXY_EOS_VERSION' | cut -d '=' -f 2) elif [[ -f "$CMAKE_LISTS" ]]; then + echo "Parsing \"$CMAKE_LISTS\"..." export $(cat $CMAKE_LISTS | grep -ie 'set *( *VERSION_MAJOR' | cut -d '(' -f 2 | cut -d ')' -f 1 | awk '{print $1"="$2}') export $(cat $CMAKE_LISTS | grep -ie 'set *( *VERSION_MINOR' | cut -d '(' -f 2 | cut -d ')' -f 1 | awk '{print $1"="$2}') export $(cat $CMAKE_LISTS | grep -ie 'set *( *VERSION_PATCH' | cut -d '(' -f 2 | cut -d ')' -f 1 | awk '{print $1"="$2}') if [[ $(cat $CMAKE_LISTS | grep -ice 'set *( *VERSION_SUFFIX') > 0 ]]; then + echo 'Using version suffix...' export $(cat $CMAKE_LISTS | grep -ie 'set *( *VERSION_SUFFIX' | cut -d '(' -f 2 | cut -d ')' -f 1 | awk '{print $1"="$2}') export $(echo "$(cat $CMAKE_LISTS | grep -ie 'set *( *VERSION_FULL.*VERSION_SUFFIX' | cut -d '(' -f 2 | cut -d ')' -f 1 | awk '{print $1"="$2}')" | envsubst | tr -d '"') else + echo 'No version suffix found.' export $(echo "$(cat $CMAKE_LISTS | grep -ie 'set *( *VERSION_FULL' | grep -ive 'VERSION_SUFFIX' | cut -d '(' -f 2 | cut -d ')' -f 1 | awk '{print $1"="$2}')" | envsubst | tr -d '"') fi EXPECTED="v$VERSION_FULL" From e648bb892a52a87a5d2011a98cdb6d1e7b4d00ab Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Mon, 13 May 2019 20:35:00 -0400 Subject: [PATCH 19/40] Changed artifact paths --- .buildkite/pipeline.yml | 44 +++++++++++++++++++------------------- scripts/package-builder.sh | 10 +++------ 2 files changed, 25 insertions(+), 29 deletions(-) diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index caa88592787..6951dfc3c17 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -180,28 +180,28 @@ steps: # skip: $SKIP_MOJAVE # Amazon Linux 2 - - label: ":aws: Amazon Linux 2 Tests" - command: | - echo "--- :arrow_down: Downloading Build Directory" - buildkite-agent artifact download build.tar.gz . --step ":aws: Amazon Linux 2 Build" - export BUILDKITE_TAG='not-empty' - ./scripts/parallel-test.sh - agents: - queue: "automation-large-builder-fleet" - plugins: - ecr#v1.1.4: - login: true - account_ids: "436617320021" - no-include-email: true - region: "us-west-2" - docker#v3.2.0: - shell: ["/bin/bash", "-i", "-e", "-c"] - debug: true - image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:amazonlinux2_2-4" - propagate-environment: true - workdir: /data/job - timeout: 60 - skip: $SKIP_TESTS + # - label: ":aws: Amazon Linux 2 Tests" + # command: | + # echo "--- :arrow_down: Downloading Build Directory" + # buildkite-agent artifact download build.tar.gz . --step ":aws: Amazon Linux 2 Build" + # export BUILDKITE_TAG='not-empty' + # ./scripts/parallel-test.sh + # agents: + # queue: "automation-large-builder-fleet" + # plugins: + # ecr#v1.1.4: + # login: true + # account_ids: "436617320021" + # no-include-email: true + # region: "us-west-2" + # docker#v3.2.0: + # shell: ["/bin/bash", "-i", "-e", "-c"] + # debug: true + # image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:amazonlinux2_2-4" + # propagate-environment: true + # workdir: /data/job + # timeout: 60 + # skip: $SKIP_TESTS # - label: ":aws: Amazon Linux 2 NP Tests" # command: diff --git a/scripts/package-builder.sh b/scripts/package-builder.sh index 50bccb8b638..5172e53ed29 100755 --- a/scripts/package-builder.sh +++ b/scripts/package-builder.sh @@ -5,13 +5,13 @@ echo '+++ :evergreen_tree: Configuring Environment' [[ "$BUILD_STEP" == '' ]] && (echo '+++ :no_entry: ERROR: Build step name must be given as BUILD_STEP or argument 1!' && exit 1) if [[ "$(uname)" == 'Darwin' ]]; then echo 'Darwin family detected, building for brew.' - ARTIFACT='"build/packages/*.rb;build/packages/*.tar.gz"' + ARTIFACT='"*.rb;*.tar.gz"' PACKAGE_TYPE='brew' else . /etc/os-release if [[ "$ID_LIKE" == 'rhel fedora' ]]; then echo 'Fedora family detected, building for RPM.' - ARTIFACT='"build/packages/*.rpm"' + ARTIFACT='"*.rpm"' PACKAGE_TYPE='rpm' mkdir -p /root/rpmbuild/BUILD mkdir -p /root/rpmbuild/BUILDROOT @@ -22,7 +22,7 @@ else yum install -y rpm-build elif [[ "$ID_LIKE" == 'debian' ]]; then echo 'Debian family detected, building for dpkg.' - ARTIFACT='"build/packages/*.deb"' + ARTIFACT='"*.deb"' PACKAGE_TYPE='deb' else echo '+++ :no_entry: ERROR: Could not determine which operating system this script is running on!' @@ -43,12 +43,8 @@ tar -zxf build.tar.gz echo "+++ :package: Starting Package Build" cd build/packages chmod 755 ./*.sh -[[ "$DEBUG" == 'true' ]] && (echo '$ pwd'; pwd; echo '$ ls'; ls) ./generate_package.sh "$PACKAGE_TYPE" -[[ "$DEBUG" == 'true' ]] && (echo '$ pwd'; pwd; echo '$ ls'; ls) echo '+++ :arrow_up: Uploading Artifacts' -cd ../.. -[[ "$DEBUG" == 'true' ]] && (echo '$ pwd'; pwd; echo '$ ls'; ls) buildkite-agent artifact upload $ARTIFACT for A in $(echo $ARTIFACT | tr ';' ' '); do if [[ $(ls $A | grep -c '') == 0 ]]; then From 2e67ce580353127b9b84ea2c2744fc9ced9ce7a9 Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Mon, 13 May 2019 20:39:52 -0400 Subject: [PATCH 20/40] Move quotes out of ARTIFACT --- scripts/package-builder.sh | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/scripts/package-builder.sh b/scripts/package-builder.sh index 5172e53ed29..95f6af57156 100755 --- a/scripts/package-builder.sh +++ b/scripts/package-builder.sh @@ -5,13 +5,13 @@ echo '+++ :evergreen_tree: Configuring Environment' [[ "$BUILD_STEP" == '' ]] && (echo '+++ :no_entry: ERROR: Build step name must be given as BUILD_STEP or argument 1!' && exit 1) if [[ "$(uname)" == 'Darwin' ]]; then echo 'Darwin family detected, building for brew.' - ARTIFACT='"*.rb;*.tar.gz"' + ARTIFACT='*.rb;*.tar.gz' PACKAGE_TYPE='brew' else . /etc/os-release if [[ "$ID_LIKE" == 'rhel fedora' ]]; then echo 'Fedora family detected, building for RPM.' - ARTIFACT='"*.rpm"' + ARTIFACT='*.rpm' PACKAGE_TYPE='rpm' mkdir -p /root/rpmbuild/BUILD mkdir -p /root/rpmbuild/BUILDROOT @@ -22,7 +22,7 @@ else yum install -y rpm-build elif [[ "$ID_LIKE" == 'debian' ]]; then echo 'Debian family detected, building for dpkg.' - ARTIFACT='"*.deb"' + ARTIFACT='*.deb' PACKAGE_TYPE='deb' else echo '+++ :no_entry: ERROR: Could not determine which operating system this script is running on!' @@ -45,7 +45,7 @@ cd build/packages chmod 755 ./*.sh ./generate_package.sh "$PACKAGE_TYPE" echo '+++ :arrow_up: Uploading Artifacts' -buildkite-agent artifact upload $ARTIFACT +buildkite-agent artifact upload \"$ARTIFACT\" for A in $(echo $ARTIFACT | tr ';' ' '); do if [[ $(ls $A | grep -c '') == 0 ]]; then echo "+++ :no_entry: ERROR: Expected artifact \"$A\" not found!" From e38b93debb88d1646cd4f846611e1a9dd6a51844 Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Mon, 13 May 2019 21:31:22 -0400 Subject: [PATCH 21/40] Try relative path for artifact upload --- scripts/package-builder.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/package-builder.sh b/scripts/package-builder.sh index 95f6af57156..361823f010e 100755 --- a/scripts/package-builder.sh +++ b/scripts/package-builder.sh @@ -45,7 +45,7 @@ cd build/packages chmod 755 ./*.sh ./generate_package.sh "$PACKAGE_TYPE" echo '+++ :arrow_up: Uploading Artifacts' -buildkite-agent artifact upload \"$ARTIFACT\" +buildkite-agent artifact upload "./$ARTIFACT" for A in $(echo $ARTIFACT | tr ';' ' '); do if [[ $(ls $A | grep -c '') == 0 ]]; then echo "+++ :no_entry: ERROR: Expected artifact \"$A\" not found!" From f6f06120f00fe31d236e3d9e3b0121b9e2ce67af Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Mon, 13 May 2019 21:32:10 -0400 Subject: [PATCH 22/40] Allow artifact paths to be specified outside the script --- scripts/package-builder.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/scripts/package-builder.sh b/scripts/package-builder.sh index 361823f010e..07ebebb4c7a 100755 --- a/scripts/package-builder.sh +++ b/scripts/package-builder.sh @@ -5,13 +5,13 @@ echo '+++ :evergreen_tree: Configuring Environment' [[ "$BUILD_STEP" == '' ]] && (echo '+++ :no_entry: ERROR: Build step name must be given as BUILD_STEP or argument 1!' && exit 1) if [[ "$(uname)" == 'Darwin' ]]; then echo 'Darwin family detected, building for brew.' - ARTIFACT='*.rb;*.tar.gz' + [[ "$ARTIFACT" == '' ]] && ARTIFACT='*.rb;*.tar.gz' PACKAGE_TYPE='brew' else . /etc/os-release if [[ "$ID_LIKE" == 'rhel fedora' ]]; then echo 'Fedora family detected, building for RPM.' - ARTIFACT='*.rpm' + [[ "$ARTIFACT" == '' ]] && ARTIFACT='*.rpm' PACKAGE_TYPE='rpm' mkdir -p /root/rpmbuild/BUILD mkdir -p /root/rpmbuild/BUILDROOT @@ -22,7 +22,7 @@ else yum install -y rpm-build elif [[ "$ID_LIKE" == 'debian' ]]; then echo 'Debian family detected, building for dpkg.' - ARTIFACT='*.deb' + [[ "$ARTIFACT" == '' ]] && ARTIFACT='*.deb' PACKAGE_TYPE='deb' else echo '+++ :no_entry: ERROR: Could not determine which operating system this script is running on!' From 3e5715adad30f739fb8ad08946df0710bcdaded3 Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Mon, 13 May 2019 22:09:50 -0400 Subject: [PATCH 23/40] Remove dependence on envsubst --- tests/version-label.sh | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/tests/version-label.sh b/tests/version-label.sh index 848b206d867..e68a720f2cf 100755 --- a/tests/version-label.sh +++ b/tests/version-label.sh @@ -20,7 +20,7 @@ CMAKE_CACHE="$EOSIO_ROOT/build/CMakeCache.txt" CMAKE_LISTS="$EOSIO_ROOT/CMakeLists.txt" if [[ -f "$CMAKE_CACHE" && $(cat "$CMAKE_CACHE" | grep -c 'DOXY_EOS_VERSION') > 0 ]]; then echo "Parsing \"$CMAKE_CACHE\"..." - EXPECTED=$(cat "$CMAKE_CACHE" | grep 'DOXY_EOS_VERSION' | cut -d '=' -f 2) + EXPECTED="v$(cat "$CMAKE_CACHE" | grep 'DOXY_EOS_VERSION' | cut -d '=' -f 2)" elif [[ -f "$CMAKE_LISTS" ]]; then echo "Parsing \"$CMAKE_LISTS\"..." export $(cat $CMAKE_LISTS | grep -ie 'set *( *VERSION_MAJOR' | cut -d '(' -f 2 | cut -d ')' -f 1 | awk '{print $1"="$2}') @@ -29,10 +29,10 @@ elif [[ -f "$CMAKE_LISTS" ]]; then if [[ $(cat $CMAKE_LISTS | grep -ice 'set *( *VERSION_SUFFIX') > 0 ]]; then echo 'Using version suffix...' export $(cat $CMAKE_LISTS | grep -ie 'set *( *VERSION_SUFFIX' | cut -d '(' -f 2 | cut -d ')' -f 1 | awk '{print $1"="$2}') - export $(echo "$(cat $CMAKE_LISTS | grep -ie 'set *( *VERSION_FULL.*VERSION_SUFFIX' | cut -d '(' -f 2 | cut -d ')' -f 1 | awk '{print $1"="$2}')" | envsubst | tr -d '"') + export $(echo "$(cat $CMAKE_LISTS | grep -ie 'set *( *VERSION_FULL.*VERSION_SUFFIX' | cut -d '(' -f 2 | cut -d ')' -f 1 | awk '{print $1"="$2}')" | sed "s/VERSION_MAJOR/$VERSION_MAJOR/" | sed "s/VERSION_MINOR/$VERSION_MINOR/" | sed "s/VERSION_PATCH/$VERSION_PATCH/" | sed "s/VERSION_SUFFIX/$VERSION_SUFFIX/" | tr -d '"{}$') else echo 'No version suffix found.' - export $(echo "$(cat $CMAKE_LISTS | grep -ie 'set *( *VERSION_FULL' | grep -ive 'VERSION_SUFFIX' | cut -d '(' -f 2 | cut -d ')' -f 1 | awk '{print $1"="$2}')" | envsubst | tr -d '"') + export $(echo "$(cat $CMAKE_LISTS | grep -ie 'set *( *VERSION_FULL' | grep -ive 'VERSION_SUFFIX' | cut -d '(' -f 2 | cut -d ')' -f 1 | awk '{print $1"="$2}')" | sed "s/VERSION_MAJOR/$VERSION_MAJOR/" | sed "s/VERSION_MINOR/$VERSION_MINOR/" | sed "s/VERSION_PATCH/$VERSION_PATCH/" | tr -d '"{}$') fi EXPECTED="v$VERSION_FULL" fi @@ -61,9 +61,9 @@ if [[ "$EXPECTED" == '' ]]; then exit 1 fi echo "Expecting \"$EXPECTED\"..." -# test nodeos version +# get nodeos version ACTUAL=$($EOSIO_ROOT/build/bin/nodeos --version) || : # nodeos currently returns -1 for --version -# check +# test if [[ "$EXPECTED" == "$ACTUAL" ]]; then echo 'Passed with \"$ACTUAL\".' exit 0 From caa6244c8038c417fa235cdf47668ed63877c0d6 Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Mon, 13 May 2019 22:25:27 -0400 Subject: [PATCH 24/40] Merged in Nathan's Anka updates --- .buildkite/pipeline.yml | 54 +++++++++++++++++++++++------------------ 1 file changed, 30 insertions(+), 24 deletions(-) diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index 6951dfc3c17..932c413f602 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -3,6 +3,7 @@ env: ANKA_TEMPLATE_TAG: "clean::cicd::git-ssh::nas::brew::buildkite-agent-3.11.2" CHECKSUMABLE: "scripts/eosio_build*" MAC_TAG: "eosio_2-4" + WORKDIR: "/data/job" steps: - wait @@ -10,7 +11,7 @@ steps: - label: ":darwin: Ensure Mojave Anka Template Dependency Tag/Layer Exists" command: - "git clone git@github.com:EOSIO/mac-anka-fleet.git" - - "cd mac-anka-fleet && . ./ensure_tag.bash" + - "cd mac-anka-fleet && . ./ensure_tag.bash -u 12 -r 25G -a '-n'" agents: - "queue=mac-anka-templater-fleet" env: @@ -19,25 +20,26 @@ steps: CHECKSUMABLE: "${CHECKSUMABLE}" TEMPLATE: "${ANKA_MOJAVE_TEMPLATE}" TEMPLATE_TAG: "${ANKA_TEMPLATE_TAG}" - TAG_COMMANDS: "./scripts/eosio_build.sh -y -P -m" # CLONED_REPO_DIR IS REQUIRED and is where the repo is always cloned into + TAG_COMMANDS: "git clone ${BUILDKITE_PULL_REQUEST_REPO:-$BUILDKITE_REPO} && cd eos && git checkout ${BUILDKITE_COMMIT} && git submodule update --init --recursive && ./scripts/eosio_build.sh -y -P -f -m && cd .. && rm -rf eos" # CLONED_REPO_DIR IS REQUIRED and is where the repo is always cloned into PROJECT_TAG: "${MAC_TAG}" - timeout: 60 + timeout: 320 skip: $SKIP_MOJAVE - wait - label: ":darwin: [Darwin] Mojave Build" command: | - git clone ${BUILDKITE_PULL_REQUEST_REPO:-$BUILDKITE_REPO} - cd eos + git clone ${BUILDKITE_PULL_REQUEST_REPO:-$BUILDKITE_REPO} . git checkout ${BUILDKITE_COMMIT} git submodule update --init --recursive ./scripts/eosio_build.sh -y -P -m tar -pczf build.tar.gz build [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo '+++ :no_entry: ERROR: No build.tar.gz artifact found!' && exit 1) + buildkite-agent artifact upload build.tar.gz plugins: chef/anka#v0.4.4: no-volume: true + workdir: $WORKDIR inherit-environment-vars: true vm-name: $ANKA_MOJAVE_TEMPLATE vm-registry-tag: "${ANKA_TEMPLATE_TAG}::${MAC_TAG}" @@ -141,7 +143,8 @@ steps: # MacOS Mojave - label: ":darwin: [Darwin] Mojave Tests" command: | - cd eos + git clone ${BUILDKITE_PULL_REQUEST_REPO:-$BUILDKITE_REPO} . + git checkout ${BUILDKITE_COMMIT} buildkite-agent artifact download build.tar.gz . --step ":darwin: [Darwin] Mojave Build" export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh @@ -150,6 +153,7 @@ steps: plugins: chef/anka#v0.4.4: no-volume: true + workdir: $WORKDIR inherit-environment-vars: true bash-interactive: true vm-name: $ANKA_MOJAVE_TEMPLATE @@ -161,22 +165,23 @@ steps: skip: $SKIP_MOJAVE$SKIP_TESTS # - label: ":darwin: [Darwin] Mojave NP Tests" - # command: - # - "tar -xzf /Network/NAS/MAC_FLEET/BUILDKITE/artifacts/${ANKA_MOJAVE_TEMPLATE}-${BUILDKITE_PIPELINE_SLUG}-${BUILDKITE_BUILD_ID}.tar.gz" - # - "cd eos && ./scripts/serial-test.sh" - # agents: - # - "queue=mac-anka-node-fleet" - # plugins: - # chef/anka#v0.4.4: - # no-volume: true - # inherit-environment-vars: true - # bash-interactive: true - # vm-name: $ANKA_MOJAVE_TEMPLATE - # vm-registry-tag: "${ANKA_TEMPLATE_TAG}::${MAC_TAG}" - # always-pull: true - # debug: true - # wait-network: true - # timeout: 120 + # command: + # - "git clone ${BUILDKITE_PULL_REQUEST_REPO:-$BUILDKITE_REPO} && cd eos && git checkout ${BUILDKITE_COMMIT} && buildkite-agent artifact download \"build.tar.gz\" . --step \":darwin: [Darwin] Mojave Build\"" + # - "cd eos && ./scripts/serial-test.sh" + # agents: + # - "queue=mac-anka-node-fleet" + # plugins: + # chef/anka#v0.4.4: + # no-volume: true + # workdir: $WORKDIR + # inherit-environment-vars: true + # bash-interactive: true + # vm-name: $ANKA_MOJAVE_TEMPLATE + # vm-registry-tag: "${ANKA_TEMPLATE_TAG}::${MAC_TAG}" + # always-pull: true + # debug: true + # wait-network: true + # timeout: 120 # skip: $SKIP_MOJAVE # Amazon Linux 2 @@ -438,14 +443,15 @@ steps: - label: ":darwin: Mojave Package Builder" command: | - [[ -d eos ]] && cd eos - ln -s "$(pwd)" /data/job + git clone ${BUILDKITE_PULL_REQUEST_REPO:-$BUILDKITE_REPO} . + git checkout ${BUILDKITE_COMMIT} ./scripts/package-builder.sh ':darwin: [Darwin] Mojave Build' agents: - "queue=mac-anka-node-fleet" plugins: chef/anka#v0.4.4: no-volume: true + workdir: $WORKDIR inherit-environment-vars: true bash-interactive: true vm-name: $ANKA_MOJAVE_TEMPLATE From 7178b3206a68b1d0cc3d1256e5dae640c309c77d Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Mon, 13 May 2019 22:32:30 -0400 Subject: [PATCH 25/40] Restored commented-out code --- .buildkite/pipeline.yml | 320 ++++++++++++++++++++-------------------- 1 file changed, 163 insertions(+), 157 deletions(-) diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index 932c413f602..daeb51f3ec0 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -53,31 +53,31 @@ steps: timeout: 120 skip: $SKIP_MOJAVE - # - label: ":aws: Amazon Linux 2 Build" - # command: - # - "./scripts/eosio_build.sh -y -P -m" - # - "tar -pczf build.tar.gz build; if [[ ! -f build.tar.gz ]]; then echo 'ERROR: No build.tar.gz artifact found!' && exit 1; fi" - # agents: - # queue: "automation-large-builder-fleet" - # artifact_paths: "build.tar.gz" - # plugins: - # ecr#v1.1.4: - # login: true - # account_ids: "436617320021" - # no-include-email: true - # region: "us-west-2" - # docker#v3.1.0: - # shell: ["/bin/bash", "-i", "-e", "-c"] - # debug: true - # image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:amazonlinux2_2-4" - # propagate-environment: true - # workdir: /data/job - # timeout: 120 + - label: ":aws: Amazon Linux 2 Build" + command: | + ./scripts/eosio_build.sh -y -P -m + tar -pczf build.tar.gz build; if [[ ! -f build.tar.gz ]]; then echo 'ERROR: No build.tar.gz artifact found!' && exit 1; fi + agents: + queue: "automation-large-builder-fleet" + artifact_paths: "build.tar.gz" + plugins: + ecr#v1.1.4: + login: true + account_ids: "436617320021" + no-include-email: true + region: "us-west-2" + docker#v3.1.0: + shell: ["/bin/bash", "-i", "-e", "-c"] + debug: true + image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:amazonlinux2_2-4" + propagate-environment: true + workdir: /data/job + timeout: 120 - label: ":centos: CentOS 7 Build" - command: - - "./scripts/eosio_build.sh -y -P -m" - - "tar -pczf build.tar.gz build; if [[ ! -f build.tar.gz ]]; then echo 'ERROR: No build.tar.gz artifact found!' && exit 1; fi" + command: | + ./scripts/eosio_build.sh -y -P -m + tar -pczf build.tar.gz build; if [[ ! -f build.tar.gz ]]; then echo 'ERROR: No build.tar.gz artifact found!' && exit 1; fi agents: queue: "automation-large-builder-fleet" artifact_paths: "build.tar.gz" @@ -96,9 +96,9 @@ steps: timeout: 120 - label: ":ubuntu: Ubuntu 16.04 Build" - command: - - "./scripts/eosio_build.sh -y -P -m" - - "tar -pczf build.tar.gz build; if [[ ! -f build.tar.gz ]]; then echo 'ERROR: No build.tar.gz artifact found!' && exit 1; fi" + command: | + ./scripts/eosio_build.sh -y -P -m + tar -pczf build.tar.gz build; if [[ ! -f build.tar.gz ]]; then echo 'ERROR: No build.tar.gz artifact found!' && exit 1; fi label: ":ubuntu: Ubuntu 16.04 Build" agents: queue: "automation-large-builder-fleet" @@ -118,9 +118,9 @@ steps: timeout: 120 - label: ":ubuntu: Ubuntu 18.04 Build" - command: - - "./scripts/eosio_build.sh -y -P -m" - - "tar -pczf build.tar.gz build; if [[ ! -f build.tar.gz ]]; then echo 'ERROR: No build.tar.gz artifact found!' && exit 1; fi" + command: | + ./scripts/eosio_build.sh -y -P -m + tar -pczf build.tar.gz build; if [[ ! -f build.tar.gz ]]; then echo 'ERROR: No build.tar.gz artifact found!' && exit 1; fi agents: queue: "automation-large-builder-fleet" artifact_paths: "build.tar.gz" @@ -164,70 +164,73 @@ steps: timeout: 120 skip: $SKIP_MOJAVE$SKIP_TESTS - # - label: ":darwin: [Darwin] Mojave NP Tests" - # command: - # - "git clone ${BUILDKITE_PULL_REQUEST_REPO:-$BUILDKITE_REPO} && cd eos && git checkout ${BUILDKITE_COMMIT} && buildkite-agent artifact download \"build.tar.gz\" . --step \":darwin: [Darwin] Mojave Build\"" - # - "cd eos && ./scripts/serial-test.sh" - # agents: - # - "queue=mac-anka-node-fleet" - # plugins: - # chef/anka#v0.4.4: - # no-volume: true - # workdir: $WORKDIR - # inherit-environment-vars: true - # bash-interactive: true - # vm-name: $ANKA_MOJAVE_TEMPLATE - # vm-registry-tag: "${ANKA_TEMPLATE_TAG}::${MAC_TAG}" - # always-pull: true - # debug: true - # wait-network: true - # timeout: 120 - # skip: $SKIP_MOJAVE + - label: ":darwin: [Darwin] Mojave NP Tests" + command: | + git clone ${BUILDKITE_PULL_REQUEST_REPO:-$BUILDKITE_REPO} . + git checkout ${BUILDKITE_COMMIT} + buildkite-agent artifact download build.tar.gz . --step ":darwin: [Darwin] Mojave Build" + ./scripts/serial-test.sh + agents: + - "queue=mac-anka-node-fleet" + plugins: + chef/anka#v0.4.4: + no-volume: true + workdir: $WORKDIR + inherit-environment-vars: true + bash-interactive: true + vm-name: $ANKA_MOJAVE_TEMPLATE + vm-registry-tag: "${ANKA_TEMPLATE_TAG}::${MAC_TAG}" + always-pull: true + debug: true + wait-network: true + timeout: 120 + skip: $SKIP_MOJAVE # Amazon Linux 2 - # - label: ":aws: Amazon Linux 2 Tests" - # command: | - # echo "--- :arrow_down: Downloading Build Directory" - # buildkite-agent artifact download build.tar.gz . --step ":aws: Amazon Linux 2 Build" - # export BUILDKITE_TAG='not-empty' - # ./scripts/parallel-test.sh - # agents: - # queue: "automation-large-builder-fleet" - # plugins: - # ecr#v1.1.4: - # login: true - # account_ids: "436617320021" - # no-include-email: true - # region: "us-west-2" - # docker#v3.2.0: - # shell: ["/bin/bash", "-i", "-e", "-c"] - # debug: true - # image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:amazonlinux2_2-4" - # propagate-environment: true - # workdir: /data/job - # timeout: 60 - # skip: $SKIP_TESTS + - label: ":aws: Amazon Linux 2 Tests" + command: | + echo "--- :arrow_down: Downloading Build Directory" + buildkite-agent artifact download build.tar.gz . --step ":aws: Amazon Linux 2 Build" + export BUILDKITE_TAG='not-empty' + ./scripts/parallel-test.sh + agents: + queue: "automation-large-builder-fleet" + plugins: + ecr#v1.1.4: + login: true + account_ids: "436617320021" + no-include-email: true + region: "us-west-2" + docker#v3.2.0: + shell: ["/bin/bash", "-i", "-e", "-c"] + debug: true + image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:amazonlinux2_2-4" + propagate-environment: true + workdir: /data/job + timeout: 60 + skip: $SKIP_TESTS - # - label: ":aws: Amazon Linux 2 NP Tests" - # command: - # - "echo \"--- :arrow_down: Downloading Build Directory\" && buildkite-agent artifact download \"build.tar.gz\" . --step \":aws: Amazon Linux 2 Build\"" - # - "./scripts/serial-test.sh" - # label: ":aws: Amazon Linux 2 NP Tests" - # agents: - # queue: "automation-large-builder-fleet" - # plugins: - # ecr#v1.1.4: - # login: true - # account_ids: "436617320021" - # no-include-email: true - # region: "us-west-2" - # docker#v3.2.0: - # shell: ["/bin/bash", "-i", "-e", "-c"] - # debug: true - # image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:amazonlinux2_2-4" - # propagate-environment: true - # workdir: /data/job - # timeout: 60 + - label: ":aws: Amazon Linux 2 NP Tests" + command: | + echo "--- :arrow_down: Downloading Build Directory" + buildkite-agent artifact download build.tar.gz . --step ":aws: Amazon Linux 2 Build" + ./scripts/serial-test.sh + label: ":aws: Amazon Linux 2 NP Tests" + agents: + queue: "automation-large-builder-fleet" + plugins: + ecr#v1.1.4: + login: true + account_ids: "436617320021" + no-include-email: true + region: "us-west-2" + docker#v3.2.0: + shell: ["/bin/bash", "-i", "-e", "-c"] + debug: true + image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:amazonlinux2_2-4" + propagate-environment: true + workdir: /data/job + timeout: 60 # CentOS - label: ":centos: CentOS 7 Tests" @@ -253,25 +256,26 @@ steps: timeout: 60 skip: $SKIP_TESTS - # - label: ":centos: CentOS 7 NP Tests" - # command: - # - "echo \"--- :arrow_down: Downloading Build Directory\" && buildkite-agent artifact download \"build.tar.gz\" . --step \":centos: CentOS 7 Build\"" - # - "./scripts/serial-test.sh" - # agents: - # queue: "automation-large-builder-fleet" - # plugins: - # ecr#v1.1.4: - # login: true - # account_ids: "436617320021" - # no-include-email: true - # region: "us-west-2" - # docker#v3.2.0: - # shell: ["/bin/bash", "-i", "-e", "-c"] - # debug: true - # image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:centos7_2-4" - # propagate-environment: true - # workdir: /data/job - # timeout: 60 + - label: ":centos: CentOS 7 NP Tests" + command: | + echo "--- :arrow_down: Downloading Build Directory" + buildkite-agent artifact download build.tar.gz . --step ":centos: CentOS 7 Build" + ./scripts/serial-test.sh + agents: + queue: "automation-large-builder-fleet" + plugins: + ecr#v1.1.4: + login: true + account_ids: "436617320021" + no-include-email: true + region: "us-west-2" + docker#v3.2.0: + shell: ["/bin/bash", "-i", "-e", "-c"] + debug: true + image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:centos7_2-4" + propagate-environment: true + workdir: /data/job + timeout: 60 # Ubuntu 16.04 - label: ":ubuntu: Ubuntu 16.04 Tests" @@ -297,25 +301,26 @@ steps: timeout: 60 skip: $SKIP_TESTS - # - label: ":ubuntu: Ubuntu 16.04 NP Tests" - # command: - # - "echo \"--- :arrow_down: Downloading Build Directory\" && buildkite-agent artifact download \"build.tar.gz\" . --step \":ubuntu: Ubuntu 16.04 Build\"" - # - "./scripts/serial-test.sh" - # agents: - # queue: "automation-large-builder-fleet" - # plugins: - # ecr#v1.1.4: - # login: true - # account_ids: "436617320021" - # no-include-email: true - # region: "us-west-2" - # docker#v3.2.0: - # shell: ["/bin/bash", "-i", "-e", "-c"] - # debug: true - # image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:ubuntu16_2-4" - # propagate-environment: true - # workdir: /data/job - # timeout: 60 + - label: ":ubuntu: Ubuntu 16.04 NP Tests" + command: | + echo "--- :arrow_down: Downloading Build Directory" + buildkite-agent artifact download build.tar.gz . --step ":ubuntu: Ubuntu 16.04 Build" + ./scripts/serial-test.sh + agents: + queue: "automation-large-builder-fleet" + plugins: + ecr#v1.1.4: + login: true + account_ids: "436617320021" + no-include-email: true + region: "us-west-2" + docker#v3.2.0: + shell: ["/bin/bash", "-i", "-e", "-c"] + debug: true + image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:ubuntu16_2-4" + propagate-environment: true + workdir: /data/job + timeout: 60 # Ubuntu 18.04 - label: ":ubuntu: Ubuntu 18.04 Tests" @@ -341,37 +346,38 @@ steps: timeout: 60 skip: $SKIP_TESTS - # - label: ":ubuntu: Ubuntu 18.04 NP Tests" - # command: - # - "echo \"--- :arrow_down: Downloading Build Directory\" && buildkite-agent artifact download \"build.tar.gz\" . --step \":ubuntu: Ubuntu 18.04 Build\"" - # - "./scripts/serial-test.sh" - # agents: - # queue: "automation-large-builder-fleet" - # plugins: - # ecr#v1.1.4: - # login: true - # account_ids: "436617320021" - # no-include-email: true - # region: "us-west-2" - # docker#v3.2.0: - # shell: ["/bin/bash", "-i", "-e", "-c"] - # debug: true - # image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:ubuntu18_2-4" - # propagate-environment: true - # workdir: /data/job - # timeout: 60 + - label: ":ubuntu: Ubuntu 18.04 NP Tests" + command: | + echo "--- :arrow_down: Downloading Build Directory" + buildkite-agent artifact download build.tar.gz . --step ":ubuntu: Ubuntu 18.04 Build" + ./scripts/serial-test.sh + agents: + queue: "automation-large-builder-fleet" + plugins: + ecr#v1.1.4: + login: true + account_ids: "436617320021" + no-include-email: true + region: "us-west-2" + docker#v3.2.0: + shell: ["/bin/bash", "-i", "-e", "-c"] + debug: true + image: "436617320021.dkr.ecr.us-west-2.amazonaws.com/ci:ubuntu18_2-4" + propagate-environment: true + workdir: /data/job + timeout: 60 - # - wait: # Test Metrics - # continue_on_failure: true + - wait: # Test Metrics + continue_on_failure: true - # - command: | - # cd scripts/metrics - # node --max-old-space-size=4096 test-metrics.js - # label: ":bar_chart: Test Metrics" - # agents: - # queue: "automation-apps-builder-fleet" - # timeout: 10 - # soft_fail: true + - command: | + cd scripts/metrics + node --max-old-space-size=4096 test-metrics.js + label: ":bar_chart: Test Metrics" + agents: + queue: "automation-apps-builder-fleet" + timeout: 10 + soft_fail: true - wait From 9b60ae16834355b06f73f71d1956de3d69bd2766 Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Mon, 13 May 2019 22:35:25 -0400 Subject: [PATCH 26/40] Removed BUILDKITE_TAG declarations --- .buildkite/pipeline.yml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index daeb51f3ec0..a465f710820 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -146,7 +146,6 @@ steps: git clone ${BUILDKITE_PULL_REQUEST_REPO:-$BUILDKITE_REPO} . git checkout ${BUILDKITE_COMMIT} buildkite-agent artifact download build.tar.gz . --step ":darwin: [Darwin] Mojave Build" - export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: - "queue=mac-anka-node-fleet" @@ -191,7 +190,6 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":aws: Amazon Linux 2 Build" - export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" @@ -237,7 +235,6 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":centos: CentOS 7 Build" - export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" @@ -282,7 +279,6 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":ubuntu: Ubuntu 16.04 Build" - export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" @@ -327,7 +323,6 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":ubuntu: Ubuntu 18.04 Build" - export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" From f7823ff17988e72b10427549ec6d14a5e2fba0a0 Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Tue, 14 May 2019 09:27:02 -0400 Subject: [PATCH 27/40] Fixed Mac Build Artifact Upload Duplication --- .buildkite/pipeline.yml | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index a465f710820..2869dcdc97a 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -34,8 +34,7 @@ steps: git submodule update --init --recursive ./scripts/eosio_build.sh -y -P -m tar -pczf build.tar.gz build - [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo '+++ :no_entry: ERROR: No build.tar.gz artifact found!' && exit 1) - buildkite-agent artifact upload build.tar.gz + [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo '+++ :no_entry: ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$ ls'; ls; exit 1) plugins: chef/anka#v0.4.4: no-volume: true @@ -56,7 +55,7 @@ steps: - label: ":aws: Amazon Linux 2 Build" command: | ./scripts/eosio_build.sh -y -P -m - tar -pczf build.tar.gz build; if [[ ! -f build.tar.gz ]]; then echo 'ERROR: No build.tar.gz artifact found!' && exit 1; fi + [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo '+++ :no_entry: ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$ ls'; ls; exit 1) agents: queue: "automation-large-builder-fleet" artifact_paths: "build.tar.gz" @@ -77,7 +76,7 @@ steps: - label: ":centos: CentOS 7 Build" command: | ./scripts/eosio_build.sh -y -P -m - tar -pczf build.tar.gz build; if [[ ! -f build.tar.gz ]]; then echo 'ERROR: No build.tar.gz artifact found!' && exit 1; fi + [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo '+++ :no_entry: ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$ ls'; ls; exit 1) agents: queue: "automation-large-builder-fleet" artifact_paths: "build.tar.gz" @@ -98,7 +97,7 @@ steps: - label: ":ubuntu: Ubuntu 16.04 Build" command: | ./scripts/eosio_build.sh -y -P -m - tar -pczf build.tar.gz build; if [[ ! -f build.tar.gz ]]; then echo 'ERROR: No build.tar.gz artifact found!' && exit 1; fi + [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo '+++ :no_entry: ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$ ls'; ls; exit 1) label: ":ubuntu: Ubuntu 16.04 Build" agents: queue: "automation-large-builder-fleet" @@ -120,7 +119,7 @@ steps: - label: ":ubuntu: Ubuntu 18.04 Build" command: | ./scripts/eosio_build.sh -y -P -m - tar -pczf build.tar.gz build; if [[ ! -f build.tar.gz ]]; then echo 'ERROR: No build.tar.gz artifact found!' && exit 1; fi + [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo '+++ :no_entry: ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$ ls'; ls; exit 1) agents: queue: "automation-large-builder-fleet" artifact_paths: "build.tar.gz" From 902c1140ab644046bbb60bf3d455e4cc211a21a5 Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Tue, 14 May 2019 09:30:00 -0400 Subject: [PATCH 28/40] BUILDKITE_TAG not empty --- .buildkite/pipeline.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index 2869dcdc97a..e4a217640b5 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -145,6 +145,7 @@ steps: git clone ${BUILDKITE_PULL_REQUEST_REPO:-$BUILDKITE_REPO} . git checkout ${BUILDKITE_COMMIT} buildkite-agent artifact download build.tar.gz . --step ":darwin: [Darwin] Mojave Build" + export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: - "queue=mac-anka-node-fleet" @@ -189,6 +190,7 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":aws: Amazon Linux 2 Build" + export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" @@ -234,6 +236,7 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":centos: CentOS 7 Build" + export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" @@ -278,6 +281,7 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":ubuntu: Ubuntu 16.04 Build" + export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" @@ -322,6 +326,7 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":ubuntu: Ubuntu 18.04 Build" + export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" From 3433e4abcd981db14c4e57413a55d18dc7d72531 Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Tue, 14 May 2019 09:39:22 -0400 Subject: [PATCH 29/40] Switched ';' to '&&' between commands in parenthesis --- .buildkite/pipeline.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index e4a217640b5..9e69bef551d 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -34,7 +34,7 @@ steps: git submodule update --init --recursive ./scripts/eosio_build.sh -y -P -m tar -pczf build.tar.gz build - [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo '+++ :no_entry: ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$ ls'; ls; exit 1) + [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo '+++ :no_entry: ERROR: No build.tar.gz artifact found, or artifact upload failed!' && echo '$ ls' && ls && exit 1) plugins: chef/anka#v0.4.4: no-volume: true @@ -55,7 +55,7 @@ steps: - label: ":aws: Amazon Linux 2 Build" command: | ./scripts/eosio_build.sh -y -P -m - [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo '+++ :no_entry: ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$ ls'; ls; exit 1) + [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo '+++ :no_entry: ERROR: No build.tar.gz artifact found, or artifact upload failed!' && echo '$ ls' && ls && exit 1) agents: queue: "automation-large-builder-fleet" artifact_paths: "build.tar.gz" @@ -76,7 +76,7 @@ steps: - label: ":centos: CentOS 7 Build" command: | ./scripts/eosio_build.sh -y -P -m - [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo '+++ :no_entry: ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$ ls'; ls; exit 1) + [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo '+++ :no_entry: ERROR: No build.tar.gz artifact found, or artifact upload failed!' && echo '$ ls' && ls && exit 1) agents: queue: "automation-large-builder-fleet" artifact_paths: "build.tar.gz" @@ -97,7 +97,7 @@ steps: - label: ":ubuntu: Ubuntu 16.04 Build" command: | ./scripts/eosio_build.sh -y -P -m - [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo '+++ :no_entry: ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$ ls'; ls; exit 1) + [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo '+++ :no_entry: ERROR: No build.tar.gz artifact found, or artifact upload failed!' && echo '$ ls' && ls && exit 1) label: ":ubuntu: Ubuntu 16.04 Build" agents: queue: "automation-large-builder-fleet" @@ -119,7 +119,7 @@ steps: - label: ":ubuntu: Ubuntu 18.04 Build" command: | ./scripts/eosio_build.sh -y -P -m - [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo '+++ :no_entry: ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$ ls'; ls; exit 1) + [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo '+++ :no_entry: ERROR: No build.tar.gz artifact found, or artifact upload failed!' && echo '$ ls' && ls && exit 1) agents: queue: "automation-large-builder-fleet" artifact_paths: "build.tar.gz" From 00f029da416d91de2ff01139239c9194469714b2 Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Tue, 14 May 2019 09:47:44 -0400 Subject: [PATCH 30/40] Shell does not support test syntactic sugar --- .buildkite/pipeline.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index 9e69bef551d..c619f7de99a 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -34,7 +34,7 @@ steps: git submodule update --init --recursive ./scripts/eosio_build.sh -y -P -m tar -pczf build.tar.gz build - [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo '+++ :no_entry: ERROR: No build.tar.gz artifact found, or artifact upload failed!' && echo '$ ls' && ls && exit 1) + if [[ -f build.tar.gz ]]; then buildkite-agent artifact upload build.tar.gz; else echo '+++ :no_entry: ERROR: No build.tar.gz artifact found!'; echo '$ ls -la'; ls -la; exit 1; fi plugins: chef/anka#v0.4.4: no-volume: true @@ -55,7 +55,7 @@ steps: - label: ":aws: Amazon Linux 2 Build" command: | ./scripts/eosio_build.sh -y -P -m - [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo '+++ :no_entry: ERROR: No build.tar.gz artifact found, or artifact upload failed!' && echo '$ ls' && ls && exit 1) + if [[ -f build.tar.gz ]]; then buildkite-agent artifact upload build.tar.gz; else echo '+++ :no_entry: ERROR: No build.tar.gz artifact found!'; echo '$ ls -la'; ls -la; exit 1; fi agents: queue: "automation-large-builder-fleet" artifact_paths: "build.tar.gz" @@ -76,7 +76,7 @@ steps: - label: ":centos: CentOS 7 Build" command: | ./scripts/eosio_build.sh -y -P -m - [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo '+++ :no_entry: ERROR: No build.tar.gz artifact found, or artifact upload failed!' && echo '$ ls' && ls && exit 1) + if [[ -f build.tar.gz ]]; then buildkite-agent artifact upload build.tar.gz; else echo '+++ :no_entry: ERROR: No build.tar.gz artifact found!'; echo '$ ls -la'; ls -la; exit 1; fi agents: queue: "automation-large-builder-fleet" artifact_paths: "build.tar.gz" @@ -97,7 +97,7 @@ steps: - label: ":ubuntu: Ubuntu 16.04 Build" command: | ./scripts/eosio_build.sh -y -P -m - [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo '+++ :no_entry: ERROR: No build.tar.gz artifact found, or artifact upload failed!' && echo '$ ls' && ls && exit 1) + if [[ -f build.tar.gz ]]; then buildkite-agent artifact upload build.tar.gz; else echo '+++ :no_entry: ERROR: No build.tar.gz artifact found!'; echo '$ ls -la'; ls -la; exit 1; fi label: ":ubuntu: Ubuntu 16.04 Build" agents: queue: "automation-large-builder-fleet" @@ -119,7 +119,7 @@ steps: - label: ":ubuntu: Ubuntu 18.04 Build" command: | ./scripts/eosio_build.sh -y -P -m - [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo '+++ :no_entry: ERROR: No build.tar.gz artifact found, or artifact upload failed!' && echo '$ ls' && ls && exit 1) + if [[ -f build.tar.gz ]]; then buildkite-agent artifact upload build.tar.gz; else echo '+++ :no_entry: ERROR: No build.tar.gz artifact found!'; echo '$ ls -la'; ls -la; exit 1; fi agents: queue: "automation-large-builder-fleet" artifact_paths: "build.tar.gz" From a3453fbfb460f42a918caa8337160898f6121f43 Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Tue, 14 May 2019 09:52:55 -0400 Subject: [PATCH 31/40] Debugging pipeline upload, changed print statement --- .buildkite/pipeline.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index c619f7de99a..2bdf06a87be 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -34,7 +34,7 @@ steps: git submodule update --init --recursive ./scripts/eosio_build.sh -y -P -m tar -pczf build.tar.gz build - if [[ -f build.tar.gz ]]; then buildkite-agent artifact upload build.tar.gz; else echo '+++ :no_entry: ERROR: No build.tar.gz artifact found!'; echo '$ ls -la'; ls -la; exit 1; fi + [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo 'ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$ ls'; ls; exit 1) plugins: chef/anka#v0.4.4: no-volume: true @@ -55,7 +55,7 @@ steps: - label: ":aws: Amazon Linux 2 Build" command: | ./scripts/eosio_build.sh -y -P -m - if [[ -f build.tar.gz ]]; then buildkite-agent artifact upload build.tar.gz; else echo '+++ :no_entry: ERROR: No build.tar.gz artifact found!'; echo '$ ls -la'; ls -la; exit 1; fi + [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo 'ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$ ls'; ls; exit 1) agents: queue: "automation-large-builder-fleet" artifact_paths: "build.tar.gz" @@ -76,7 +76,7 @@ steps: - label: ":centos: CentOS 7 Build" command: | ./scripts/eosio_build.sh -y -P -m - if [[ -f build.tar.gz ]]; then buildkite-agent artifact upload build.tar.gz; else echo '+++ :no_entry: ERROR: No build.tar.gz artifact found!'; echo '$ ls -la'; ls -la; exit 1; fi + [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo 'ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$ ls'; ls; exit 1) agents: queue: "automation-large-builder-fleet" artifact_paths: "build.tar.gz" @@ -97,7 +97,7 @@ steps: - label: ":ubuntu: Ubuntu 16.04 Build" command: | ./scripts/eosio_build.sh -y -P -m - if [[ -f build.tar.gz ]]; then buildkite-agent artifact upload build.tar.gz; else echo '+++ :no_entry: ERROR: No build.tar.gz artifact found!'; echo '$ ls -la'; ls -la; exit 1; fi + [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo 'ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$ ls'; ls; exit 1) label: ":ubuntu: Ubuntu 16.04 Build" agents: queue: "automation-large-builder-fleet" @@ -119,7 +119,7 @@ steps: - label: ":ubuntu: Ubuntu 18.04 Build" command: | ./scripts/eosio_build.sh -y -P -m - if [[ -f build.tar.gz ]]; then buildkite-agent artifact upload build.tar.gz; else echo '+++ :no_entry: ERROR: No build.tar.gz artifact found!'; echo '$ ls -la'; ls -la; exit 1; fi + [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo 'ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$ ls'; ls; exit 1) agents: queue: "automation-large-builder-fleet" artifact_paths: "build.tar.gz" From 93817636447dd13187909fdfa9568188ef617c22 Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Tue, 14 May 2019 09:57:26 -0400 Subject: [PATCH 32/40] Escape dollar signs --- .buildkite/pipeline.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index 2bdf06a87be..e61d816c2e7 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -34,7 +34,7 @@ steps: git submodule update --init --recursive ./scripts/eosio_build.sh -y -P -m tar -pczf build.tar.gz build - [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo 'ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$ ls'; ls; exit 1) + [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo 'ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$$ ls'; ls; exit 1) plugins: chef/anka#v0.4.4: no-volume: true @@ -55,7 +55,7 @@ steps: - label: ":aws: Amazon Linux 2 Build" command: | ./scripts/eosio_build.sh -y -P -m - [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo 'ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$ ls'; ls; exit 1) + [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo 'ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$$ ls'; ls; exit 1) agents: queue: "automation-large-builder-fleet" artifact_paths: "build.tar.gz" @@ -76,7 +76,7 @@ steps: - label: ":centos: CentOS 7 Build" command: | ./scripts/eosio_build.sh -y -P -m - [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo 'ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$ ls'; ls; exit 1) + [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo 'ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$$ ls'; ls; exit 1) agents: queue: "automation-large-builder-fleet" artifact_paths: "build.tar.gz" @@ -97,7 +97,7 @@ steps: - label: ":ubuntu: Ubuntu 16.04 Build" command: | ./scripts/eosio_build.sh -y -P -m - [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo 'ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$ ls'; ls; exit 1) + [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo 'ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$$ ls'; ls; exit 1) label: ":ubuntu: Ubuntu 16.04 Build" agents: queue: "automation-large-builder-fleet" @@ -119,7 +119,7 @@ steps: - label: ":ubuntu: Ubuntu 18.04 Build" command: | ./scripts/eosio_build.sh -y -P -m - [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo 'ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$ ls'; ls; exit 1) + [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo 'ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$$ ls'; ls; exit 1) agents: queue: "automation-large-builder-fleet" artifact_paths: "build.tar.gz" From 51f3742751c2bdce5dadb70d71562ff9d7d24c1e Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Tue, 14 May 2019 10:02:57 -0400 Subject: [PATCH 33/40] Final Changes, Remove BUILDKITE_TAG Tampering --- .buildkite/pipeline.yml | 15 +++++---------- scripts/package-builder.sh | 4 ++-- tests/version-label.sh | 8 ++++---- 3 files changed, 11 insertions(+), 16 deletions(-) diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index e61d816c2e7..5d50a3bc8d9 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -34,7 +34,7 @@ steps: git submodule update --init --recursive ./scripts/eosio_build.sh -y -P -m tar -pczf build.tar.gz build - [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo 'ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$$ ls'; ls; exit 1) + [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo 'ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$$ ls -la'; ls -la; exit 1) plugins: chef/anka#v0.4.4: no-volume: true @@ -55,7 +55,7 @@ steps: - label: ":aws: Amazon Linux 2 Build" command: | ./scripts/eosio_build.sh -y -P -m - [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo 'ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$$ ls'; ls; exit 1) + [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo 'ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$$ ls -la'; ls -la; exit 1) agents: queue: "automation-large-builder-fleet" artifact_paths: "build.tar.gz" @@ -76,7 +76,7 @@ steps: - label: ":centos: CentOS 7 Build" command: | ./scripts/eosio_build.sh -y -P -m - [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo 'ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$$ ls'; ls; exit 1) + [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo 'ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$$ ls -la'; ls -la; exit 1) agents: queue: "automation-large-builder-fleet" artifact_paths: "build.tar.gz" @@ -97,7 +97,7 @@ steps: - label: ":ubuntu: Ubuntu 16.04 Build" command: | ./scripts/eosio_build.sh -y -P -m - [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo 'ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$$ ls'; ls; exit 1) + [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo 'ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$$ ls -la'; ls -la; exit 1) label: ":ubuntu: Ubuntu 16.04 Build" agents: queue: "automation-large-builder-fleet" @@ -119,7 +119,7 @@ steps: - label: ":ubuntu: Ubuntu 18.04 Build" command: | ./scripts/eosio_build.sh -y -P -m - [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo 'ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$$ ls'; ls; exit 1) + [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo 'ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$$ ls -la'; ls -la; exit 1) agents: queue: "automation-large-builder-fleet" artifact_paths: "build.tar.gz" @@ -145,7 +145,6 @@ steps: git clone ${BUILDKITE_PULL_REQUEST_REPO:-$BUILDKITE_REPO} . git checkout ${BUILDKITE_COMMIT} buildkite-agent artifact download build.tar.gz . --step ":darwin: [Darwin] Mojave Build" - export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: - "queue=mac-anka-node-fleet" @@ -190,7 +189,6 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":aws: Amazon Linux 2 Build" - export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" @@ -236,7 +234,6 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":centos: CentOS 7 Build" - export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" @@ -281,7 +278,6 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":ubuntu: Ubuntu 16.04 Build" - export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" @@ -326,7 +322,6 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":ubuntu: Ubuntu 18.04 Build" - export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" diff --git a/scripts/package-builder.sh b/scripts/package-builder.sh index 07ebebb4c7a..a30c75859f3 100755 --- a/scripts/package-builder.sh +++ b/scripts/package-builder.sh @@ -51,8 +51,8 @@ for A in $(echo $ARTIFACT | tr ';' ' '); do echo "+++ :no_entry: ERROR: Expected artifact \"$A\" not found!" echo '$ pwd' pwd - echo '$ ls' - ls + echo '$ ls -la' + ls -la exit 1 fi done diff --git a/tests/version-label.sh b/tests/version-label.sh index e68a720f2cf..463122cf405 100755 --- a/tests/version-label.sh +++ b/tests/version-label.sh @@ -54,10 +54,10 @@ if [[ "$EXPECTED" == '' ]]; then cat "$CMAKE_CACHE" | grep "DOXY_EOS_VERSION" echo '$ pwd' pwd - echo '$ ls "$EOSIO_ROOT"' - ls "$EOSIO_ROOT" - echo '$ ls "$EOSIO_ROOT/build"' - ls "$EOSIO_ROOT/build" + echo '$ ls -la "$EOSIO_ROOT"' + ls -la "$EOSIO_ROOT" + echo '$ ls -la "$EOSIO_ROOT/build"' + ls -la "$EOSIO_ROOT/build" exit 1 fi echo "Expecting \"$EXPECTED\"..." From 5d5f06a3f7606b6aa1a6f5ecc9ab63a178342f7f Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Tue, 14 May 2019 10:20:58 -0400 Subject: [PATCH 34/40] Fixed artifact upload duplication on linux, restored BUILDKITE_TAG tampering --- .buildkite/pipeline.yml | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index 5d50a3bc8d9..07846c72532 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -55,7 +55,8 @@ steps: - label: ":aws: Amazon Linux 2 Build" command: | ./scripts/eosio_build.sh -y -P -m - [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo 'ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$$ ls -la'; ls -la; exit 1) + tar -pczf build.tar.gz build + [[ ! -f build.tar.gz ]] && (echo 'ERROR: No build.tar.gz artifact found!'; echo '$$ ls -la'; ls -la; exit 1) agents: queue: "automation-large-builder-fleet" artifact_paths: "build.tar.gz" @@ -76,7 +77,8 @@ steps: - label: ":centos: CentOS 7 Build" command: | ./scripts/eosio_build.sh -y -P -m - [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo 'ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$$ ls -la'; ls -la; exit 1) + tar -pczf build.tar.gz build + [[ ! -f build.tar.gz ]] && (echo 'ERROR: No build.tar.gz artifact found!'; echo '$$ ls -la'; ls -la; exit 1) agents: queue: "automation-large-builder-fleet" artifact_paths: "build.tar.gz" @@ -97,7 +99,8 @@ steps: - label: ":ubuntu: Ubuntu 16.04 Build" command: | ./scripts/eosio_build.sh -y -P -m - [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo 'ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$$ ls -la'; ls -la; exit 1) + tar -pczf build.tar.gz build + [[ ! -f build.tar.gz ]] && (echo 'ERROR: No build.tar.gz artifact found!'; echo '$$ ls -la'; ls -la; exit 1) label: ":ubuntu: Ubuntu 16.04 Build" agents: queue: "automation-large-builder-fleet" @@ -119,7 +122,8 @@ steps: - label: ":ubuntu: Ubuntu 18.04 Build" command: | ./scripts/eosio_build.sh -y -P -m - [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo 'ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$$ ls -la'; ls -la; exit 1) + tar -pczf build.tar.gz build + [[ ! -f build.tar.gz ]] && (echo 'ERROR: No build.tar.gz artifact found!'; echo '$$ ls -la'; ls -la; exit 1) agents: queue: "automation-large-builder-fleet" artifact_paths: "build.tar.gz" @@ -145,6 +149,7 @@ steps: git clone ${BUILDKITE_PULL_REQUEST_REPO:-$BUILDKITE_REPO} . git checkout ${BUILDKITE_COMMIT} buildkite-agent artifact download build.tar.gz . --step ":darwin: [Darwin] Mojave Build" + export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: - "queue=mac-anka-node-fleet" @@ -189,6 +194,7 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":aws: Amazon Linux 2 Build" + export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" @@ -234,6 +240,7 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":centos: CentOS 7 Build" + export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" @@ -278,6 +285,7 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":ubuntu: Ubuntu 16.04 Build" + export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" @@ -322,6 +330,7 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":ubuntu: Ubuntu 18.04 Build" + export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" From a401d57b45db21e8696e3f3cbf075ae161cf0e32 Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Tue, 14 May 2019 10:53:11 -0400 Subject: [PATCH 35/40] Test syntax requires "or no-op" --- .buildkite/pipeline.yml | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index 07846c72532..ae6e6ca332e 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -34,7 +34,7 @@ steps: git submodule update --init --recursive ./scripts/eosio_build.sh -y -P -m tar -pczf build.tar.gz build - [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo 'ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$$ ls -la'; ls -la; exit 1) + [[ -f build.tar.gz ]] && buildkite-agent artifact upload build.tar.gz || (echo '+++ :no_entry: ERROR: No build.tar.gz artifact found, or artifact upload failed!'; echo '$$ ls -la'; ls -la; exit 1) plugins: chef/anka#v0.4.4: no-volume: true @@ -56,7 +56,7 @@ steps: command: | ./scripts/eosio_build.sh -y -P -m tar -pczf build.tar.gz build - [[ ! -f build.tar.gz ]] && (echo 'ERROR: No build.tar.gz artifact found!'; echo '$$ ls -la'; ls -la; exit 1) + [[ ! -f build.tar.gz ]] && (echo '+++ :no_entry: ERROR: No build.tar.gz artifact found!'; echo '$$ ls -la'; ls -la; exit 1) || : agents: queue: "automation-large-builder-fleet" artifact_paths: "build.tar.gz" @@ -78,7 +78,7 @@ steps: command: | ./scripts/eosio_build.sh -y -P -m tar -pczf build.tar.gz build - [[ ! -f build.tar.gz ]] && (echo 'ERROR: No build.tar.gz artifact found!'; echo '$$ ls -la'; ls -la; exit 1) + [[ ! -f build.tar.gz ]] && (echo '+++ :no_entry: ERROR: No build.tar.gz artifact found!'; echo '$$ ls -la'; ls -la; exit 1) || : agents: queue: "automation-large-builder-fleet" artifact_paths: "build.tar.gz" @@ -100,7 +100,7 @@ steps: command: | ./scripts/eosio_build.sh -y -P -m tar -pczf build.tar.gz build - [[ ! -f build.tar.gz ]] && (echo 'ERROR: No build.tar.gz artifact found!'; echo '$$ ls -la'; ls -la; exit 1) + [[ ! -f build.tar.gz ]] && (echo '+++ :no_entry: ERROR: No build.tar.gz artifact found!'; echo '$$ ls -la'; ls -la; exit 1) || : label: ":ubuntu: Ubuntu 16.04 Build" agents: queue: "automation-large-builder-fleet" @@ -123,7 +123,7 @@ steps: command: | ./scripts/eosio_build.sh -y -P -m tar -pczf build.tar.gz build - [[ ! -f build.tar.gz ]] && (echo 'ERROR: No build.tar.gz artifact found!'; echo '$$ ls -la'; ls -la; exit 1) + [[ ! -f build.tar.gz ]] && (echo '+++ :no_entry: ERROR: No build.tar.gz artifact found!'; echo '$$ ls -la'; ls -la; exit 1) || : agents: queue: "automation-large-builder-fleet" artifact_paths: "build.tar.gz" @@ -149,7 +149,7 @@ steps: git clone ${BUILDKITE_PULL_REQUEST_REPO:-$BUILDKITE_REPO} . git checkout ${BUILDKITE_COMMIT} buildkite-agent artifact download build.tar.gz . --step ":darwin: [Darwin] Mojave Build" - export BUILDKITE_TAG='not-empty' + BUILDKITE_TAG='non-empty' ./scripts/parallel-test.sh agents: - "queue=mac-anka-node-fleet" @@ -194,7 +194,7 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":aws: Amazon Linux 2 Build" - export BUILDKITE_TAG='not-empty' + BUILDKITE_TAG='non-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" @@ -240,7 +240,7 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":centos: CentOS 7 Build" - export BUILDKITE_TAG='not-empty' + BUILDKITE_TAG='non-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" @@ -285,7 +285,7 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":ubuntu: Ubuntu 16.04 Build" - export BUILDKITE_TAG='not-empty' + BUILDKITE_TAG='non-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" @@ -330,7 +330,7 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":ubuntu: Ubuntu 18.04 Build" - export BUILDKITE_TAG='not-empty' + BUILDKITE_TAG='non-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" From cb250f20c7b62b28ba93c420cd35ef50a6139323 Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Tue, 14 May 2019 10:53:42 -0400 Subject: [PATCH 36/40] Package builder now prints commit hash --- scripts/package-builder.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/scripts/package-builder.sh b/scripts/package-builder.sh index a30c75859f3..07f9d39dd42 100755 --- a/scripts/package-builder.sh +++ b/scripts/package-builder.sh @@ -41,6 +41,9 @@ echo "+++ :compression: Extracting Build Directory" [[ -d build ]] && rm -rf build tar -zxf build.tar.gz echo "+++ :package: Starting Package Build" +BASE_COMMIT=$(cat build/programs/nodeos/config.hpp | grep 'version' | awk '{print $5}' | tr -d ';') +BASE_COMMIT="${BASE_COMMIT:2:42}" +echo "Found build against $BASE_COMMIT." cd build/packages chmod 755 ./*.sh ./generate_package.sh "$PACKAGE_TYPE" From c3a915cc84adc9ab754259b9d23ff5d10ee1d120 Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Tue, 14 May 2019 10:59:52 -0400 Subject: [PATCH 37/40] Removed BUILDKITE_TAG Tampering --- .buildkite/pipeline.yml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index ae6e6ca332e..510346d7d4f 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -149,7 +149,6 @@ steps: git clone ${BUILDKITE_PULL_REQUEST_REPO:-$BUILDKITE_REPO} . git checkout ${BUILDKITE_COMMIT} buildkite-agent artifact download build.tar.gz . --step ":darwin: [Darwin] Mojave Build" - BUILDKITE_TAG='non-empty' ./scripts/parallel-test.sh agents: - "queue=mac-anka-node-fleet" @@ -194,7 +193,6 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":aws: Amazon Linux 2 Build" - BUILDKITE_TAG='non-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" @@ -240,7 +238,6 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":centos: CentOS 7 Build" - BUILDKITE_TAG='non-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" @@ -285,7 +282,6 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":ubuntu: Ubuntu 16.04 Build" - BUILDKITE_TAG='non-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" @@ -330,7 +326,6 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":ubuntu: Ubuntu 18.04 Build" - BUILDKITE_TAG='non-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" From ff20e5ca72883118c8c0b05c6b91047ec18916dd Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Tue, 14 May 2019 12:22:18 -0400 Subject: [PATCH 38/40] Fixed brew Updater step --- .buildkite/pipeline.yml | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index 510346d7d4f..28095b8f0a0 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -149,6 +149,7 @@ steps: git clone ${BUILDKITE_PULL_REQUEST_REPO:-$BUILDKITE_REPO} . git checkout ${BUILDKITE_COMMIT} buildkite-agent artifact download build.tar.gz . --step ":darwin: [Darwin] Mojave Build" + export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: - "queue=mac-anka-node-fleet" @@ -193,6 +194,7 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":aws: Amazon Linux 2 Build" + export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" @@ -238,6 +240,7 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":centos: CentOS 7 Build" + export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" @@ -282,6 +285,7 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":ubuntu: Ubuntu 16.04 Build" + export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" @@ -326,6 +330,7 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":ubuntu: Ubuntu 18.04 Build" + export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" @@ -469,18 +474,18 @@ steps: - wait - command: | # Brew Updater - echo "--- :arrow_down: Downloading brew files" - buildkite-agent artifact download "build/packages/eosio.rb" . --step ":darwin: Mojave Package Builder" + echo "+++ :arrow_down: Downloading brew files" + buildkite-agent artifact download "eosio.rb" . --step ":darwin: Mojave Package Builder" label: ":darwin: Brew Updater" agents: queue: "automation-large-builder-fleet" artifact_paths: - - "build/packages/eosio.rb" + - "eosio.rb" timeout: 5 skip: $SKIP_MOJAVE - command: | # Git Submodule Regression Check - echo "+++ :microscope: Running git submodule regression check" && \ + echo "+++ :git: Running Git Submodule Regression Check" ./scripts/submodule_check.sh label: "Git Submodule Regression Check" agents: From 6bb705174646420c3c2d3e3ca8222c9111167166 Mon Sep 17 00:00:00 2001 From: Zach Butler Date: Tue, 14 May 2019 12:23:43 -0400 Subject: [PATCH 39/40] Removed Herobrine --- .buildkite/pipeline.yml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index 28095b8f0a0..6036fd8a9ce 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -149,7 +149,6 @@ steps: git clone ${BUILDKITE_PULL_REQUEST_REPO:-$BUILDKITE_REPO} . git checkout ${BUILDKITE_COMMIT} buildkite-agent artifact download build.tar.gz . --step ":darwin: [Darwin] Mojave Build" - export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: - "queue=mac-anka-node-fleet" @@ -194,7 +193,6 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":aws: Amazon Linux 2 Build" - export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" @@ -240,7 +238,6 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":centos: CentOS 7 Build" - export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" @@ -285,7 +282,6 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":ubuntu: Ubuntu 16.04 Build" - export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" @@ -330,7 +326,6 @@ steps: command: | echo "--- :arrow_down: Downloading Build Directory" buildkite-agent artifact download build.tar.gz . --step ":ubuntu: Ubuntu 18.04 Build" - export BUILDKITE_TAG='not-empty' ./scripts/parallel-test.sh agents: queue: "automation-large-builder-fleet" From 1dc11396db4b02cad8999357d806abd042e18dff Mon Sep 17 00:00:00 2001 From: Zach <34947245+kj4ezj@users.noreply.github.com> Date: Tue, 14 May 2019 19:11:23 -0400 Subject: [PATCH 40/40] Finish test purpose comment --- tests/version-label.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/version-label.sh b/tests/version-label.sh index 463122cf405..008c469d2b8 100755 --- a/tests/version-label.sh +++ b/tests/version-label.sh @@ -1,5 +1,5 @@ #!/bin/bash -# The purpose of this test is to ensure that the output of the "nodeos --version" command matches the +# The purpose of this test is to ensure that the output of the "nodeos --version" command matches the version string defined by our CMake files # If the environment variable BUILDKITE_TAG is empty or unset, this test will echo success echo '##### Nodeos Version Label Test #####' if [[ "$BUILDKITE_TAG" == '' || "$BUILDKITE" != 'true' ]]; then @@ -70,4 +70,4 @@ if [[ "$EXPECTED" == "$ACTUAL" ]]; then fi echo 'Failed!' echo "\"$EXPECTED\" != \"$ACTUAL\"" -exit 1 \ No newline at end of file +exit 1