Exporting environment variables Exporting CI Exporting DISPLAY Exporting PAGER Exporting SEMAPHORE Exporting SEMAPHORE_AGENT_MACHINE_ENVIRONMENT_TYPE Exporting SEMAPHORE_AGENT_MACHINE_OS_IMAGE Exporting SEMAPHORE_AGENT_MACHINE_TYPE Exporting SEMAPHORE_ARTIFACT_TOKEN Exporting SEMAPHORE_CACHE_ARCHIVE_METHOD Exporting SEMAPHORE_CACHE_BACKEND Exporting SEMAPHORE_CACHE_PRIVATE_KEY_PATH Exporting SEMAPHORE_CACHE_URL Exporting SEMAPHORE_CACHE_USERNAME Exporting SEMAPHORE_GIT_BRANCH Exporting SEMAPHORE_GIT_COMMITTER Exporting SEMAPHORE_GIT_COMMIT_AUTHOR Exporting SEMAPHORE_GIT_COMMIT_RANGE Exporting SEMAPHORE_GIT_DIR Exporting SEMAPHORE_GIT_PROVIDER Exporting SEMAPHORE_GIT_REF Exporting SEMAPHORE_GIT_REF_TYPE Exporting SEMAPHORE_GIT_REPO_NAME Exporting SEMAPHORE_GIT_REPO_SLUG Exporting SEMAPHORE_GIT_SHA Exporting SEMAPHORE_GIT_URL Exporting SEMAPHORE_GIT_WORKING_BRANCH Exporting SEMAPHORE_JOB_CREATION_TIME Exporting SEMAPHORE_JOB_ID Exporting SEMAPHORE_JOB_NAME Exporting SEMAPHORE_JOB_TYPE Exporting SEMAPHORE_ORGANIZATION_URL Exporting SEMAPHORE_PIPELINE_0_ARTEFACT_ID Exporting SEMAPHORE_PIPELINE_ARTEFACT_ID Exporting SEMAPHORE_PIPELINE_ID Exporting SEMAPHORE_PIPELINE_PROMOTED_BY Exporting SEMAPHORE_PIPELINE_PROMOTION Exporting SEMAPHORE_PIPELINE_RERUN Exporting SEMAPHORE_PROJECT_ID Exporting SEMAPHORE_PROJECT_NAME Exporting SEMAPHORE_TOOLBOX_METRICS_ENABLED Exporting SEMAPHORE_WORKFLOW_HOOK_SOURCE Exporting SEMAPHORE_WORKFLOW_ID Exporting SEMAPHORE_WORKFLOW_NUMBER Exporting SEMAPHORE_WORKFLOW_RERUN Exporting SEMAPHORE_WORKFLOW_TRIGGERED_BY Exporting SEMAPHORE_WORKFLOW_TRIGGERED_BY_API Exporting SEMAPHORE_WORKFLOW_TRIGGERED_BY_HOOK Exporting SEMAPHORE_WORKFLOW_TRIGGERED_BY_MANUAL_RUN Exporting SEMAPHORE_WORKFLOW_TRIGGERED_BY_SCHEDULE Exporting SEMAPHORE_YAML_FILE_PATH Exporting SSH_PRIVATE_KEY_PATH Exporting TERM Injecting Files Injecting /home/semaphore/.ssh/semaphore_cache_key with file mode 0600 Injecting /home/semaphore/.ssh/id_rsa with file mode 0600 Running the pre-job hook configured in the agent Running: source /opt/semaphoreci/prejob/pre_job.sh Warning: The agent is configured to fail the job if the pre-job hook fails. Installing toolbox in pre-job-hook Toolbox download URL: http://packages.semaphoreci.com/toolbox/releases/download/v1.22.2/linux.tar Tar file: linux.tar Attempt 5 toolbox/ toolbox/artifact toolbox/libcheckout toolbox/sem-install toolbox/toolbox toolbox/README.md toolbox/libchecksum toolbox/enetwork toolbox/cache toolbox/ssh-session-cli toolbox/sem-context toolbox/sem-semantic-release toolbox/install-package toolbox/spc toolbox/sem-dockerize toolbox/test-results toolbox/sem-service toolbox/system-metrics-collector toolbox/install-toolbox toolbox/when toolbox/sem-version toolbox/Dockerfile.dev toolbox/sem-service-check-params toolbox/retry retry installed ssh-session-cli installed cache installed sem-context installed sem-service installed sem-dockerize installed sem-service-check-params installed sem-semantic-release installed Installing the artifacts CLI artifacts installed Installing the test results CLI test-results installed Installing the install-package for linux install-package installed Installing the SPC CLI spc installed Installing the when CLI when installed Installing the enetwork CLI enetwork installed Starting to collect System Metrics in /tmp/system-metrics Starting virtual X frame buffer: Xvfb. Toolbox installed Starting ssh-agent Agent pid 2914 ssh-agent started Connecting to cache # 116.202.32.43:29920 SSH-2.0-OpenSSH_8.2p1 Ubuntu-4ubuntu0.11 # 116.202.32.43:29920 SSH-2.0-OpenSSH_8.2p1 Ubuntu-4ubuntu0.11 # 116.202.32.43:29920 SSH-2.0-OpenSSH_8.2p1 Ubuntu-4ubuntu0.11 # 116.202.32.43:29920 SSH-2.0-OpenSSH_8.2p1 Ubuntu-4ubuntu0.11 # 116.202.32.43:29920 SSH-2.0-OpenSSH_8.2p1 Ubuntu-4ubuntu0.11 Identity added: /home/semaphore/.ssh/semaphore_cache_key (/home/semaphore/.ssh/semaphore_cache_key) export GIT_LFS_SKIP_SMUDGE=1 checkout Performing shallow clone with depth: 50 Cloning into 'DevOps-Python-tools'... Warning: Permanently added 'github.com,140.82.121.3' (ECDSA) to the list of known hosts. remote: Enumerating objects: 539, done. remote: Counting objects: 0% (1/539) remote: Counting objects: 1% (6/539) remote: Counting objects: 2% (11/539) remote: Counting objects: 3% (17/539) remote: Counting objects: 4% (22/539) remote: Counting objects: 5% (27/539) remote: Counting objects: 6% (33/539) remote: Counting objects: 7% (38/539) remote: Counting objects: 8% (44/539) remote: Counting objects: 9% (49/539) remote: Counting objects: 10% (54/539) remote: Counting objects: 11% (60/539) remote: Counting objects: 12% (65/539) remote: Counting objects: 13% (71/539) remote: Counting objects: 14% (76/539) remote: Counting objects: 15% (81/539) remote: Counting objects: 16% (87/539) remote: Counting objects: 17% (92/539) remote: Counting objects: 18% (98/539) remote: Counting objects: 19% (103/539) remote: Counting objects: 20% (108/539) remote: Counting objects: 21% (114/539) remote: Counting objects: 22% (119/539) remote: Counting objects: 23% (124/539) remote: Counting objects: 24% (130/539) remote: Counting objects: 25% (135/539) remote: Counting objects: 26% (141/539) remote: Counting objects: 27% (146/539) remote: Counting objects: 28% (151/539) remote: Counting objects: 29% (157/539) remote: Counting objects: 30% (162/539) remote: Counting objects: 31% (168/539) remote: Counting objects: 32% (173/539) remote: Counting objects: 33% (178/539) remote: Counting objects: 34% (184/539) remote: Counting objects: 35% (189/539) remote: Counting objects: 36% (195/539) remote: Counting objects: 37% (200/539) remote: Counting objects: 38% (205/539) remote: Counting objects: 39% (211/539) remote: Counting objects: 40% (216/539) remote: Counting objects: 41% (221/539) remote: Counting objects: 42% (227/539) remote: Counting objects: 43% (232/539) remote: Counting objects: 44% (238/539) remote: Counting objects: 45% (243/539) remote: Counting objects: 46% (248/539) remote: Counting objects: 47% (254/539) remote: Counting objects: 48% (259/539) remote: Counting objects: 49% (265/539) remote: Counting objects: 50% (270/539) remote: Counting objects: 51% (275/539) remote: Counting objects: 52% (281/539) remote: Counting objects: 53% (286/539) remote: Counting objects: 54% (292/539) remote: Counting objects: 55% (297/539) remote: Counting objects: 56% (302/539) remote: Counting objects: 57% (308/539) remote: Counting objects: 58% (313/539) remote: Counting objects: 59% (319/539) remote: Counting objects: 60% (324/539) remote: Counting objects: 61% (329/539) remote: Counting objects: 62% (335/539) remote: Counting objects: 63% (340/539) remote: Counting objects: 64% (345/539) remote: Counting objects: 65% (351/539) remote: Counting objects: 66% (356/539) remote: Counting objects: 67% (362/539) remote: Counting objects: 68% (367/539) remote: Counting objects: 69% (372/539) remote: Counting objects: 70% (378/539) remote: Counting objects: 71% (383/539) remote: Counting objects: 72% (389/539) remote: Counting objects: 73% (394/539) remote: Counting objects: 74% (399/539) remote: Counting objects: 75% (405/539) remote: Counting objects: 76% (410/539) remote: Counting objects: 77% (416/539) remote: Counting objects: 78% (421/539) remote: Counting objects: 79% (426/539) remote: Counting objects: 80% (432/539) remote: Counting objects: 81% (437/539) remote: Counting objects: 82% (442/539) remote: Counting objects: 83% (448/539) remote: Counting objects: 84% (453/539) remote: Counting objects: 85% (459/539) remote: Counting objects: 86% (464/539) remote: Counting objects: 87% (469/539) remote: Counting objects: 88% (475/539) remote: Counting objects: 89% (480/539) remote: Counting objects: 90% (486/539) remote: Counting objects: 91% (491/539) remote: Counting objects: 92% (496/539) remote: Counting objects: 93% (502/539) remote: Counting objects: 94% (507/539) remote: Counting objects: 95% (513/539) remote: Counting objects: 96% (518/539) remote: Counting objects: 97% (523/539) remote: Counting objects: 98% (529/539) remote: Counting objects: 99% (534/539) remote: Counting objects: 100% (539/539) remote: Counting objects: 100% (539/539), done. remote: Compressing objects: 0% (1/290) remote: Compressing objects: 1% (3/290) remote: Compressing objects: 2% (6/290) remote: Compressing objects: 3% (9/290) remote: Compressing objects: 4% (12/290) remote: Compressing objects: 5% (15/290) remote: Compressing objects: 6% (18/290) remote: Compressing objects: 7% (21/290) remote: Compressing objects: 8% (24/290) remote: Compressing objects: 9% (27/290) remote: Compressing objects: 10% (29/290) remote: Compressing objects: 11% (32/290) remote: Compressing objects: 12% (35/290) remote: Compressing objects: 13% (38/290) remote: Compressing objects: 14% (41/290) remote: Compressing objects: 15% (44/290) remote: Compressing objects: 16% (47/290) remote: Compressing objects: 17% (50/290) remote: Compressing objects: 18% (53/290) remote: Compressing objects: 19% (56/290) remote: Compressing objects: 20% (58/290) remote: Compressing objects: 21% (61/290) remote: Compressing objects: 22% (64/290) remote: Compressing objects: 23% (67/290) remote: Compressing objects: 24% (70/290) remote: Compressing objects: 25% (73/290) remote: Compressing objects: 26% (76/290) remote: Compressing objects: 27% (79/290) remote: Compressing objects: 28% (82/290) remote: Compressing objects: 29% (85/290) remote: Compressing objects: 30% (87/290) remote: Compressing objects: 31% (90/290) remote: Compressing objects: 32% (93/290) remote: Compressing objects: 33% (96/290) remote: Compressing objects: 34% (99/290) remote: Compressing objects: 35% (102/290) remote: Compressing objects: 36% (105/290) remote: Compressing objects: 37% (108/290) remote: Compressing objects: 38% (111/290) remote: Compressing objects: 39% (114/290) remote: Compressing objects: 40% (116/290) remote: Compressing objects: 41% (119/290) remote: Compressing objects: 42% (122/290) remote: Compressing objects: 43% (125/290) remote: Compressing objects: 44% (128/290) remote: Compressing objects: 45% (131/290) remote: Compressing objects: 46% (134/290) remote: Compressing objects: 47% (137/290) remote: Compressing objects: 48% (140/290) remote: Compressing objects: 49% (143/290) remote: Compressing objects: 50% (145/290) remote: Compressing objects: 51% (148/290) remote: Compressing objects: 52% (151/290) remote: Compressing objects: 53% (154/290) remote: Compressing objects: 54% (157/290) remote: Compressing objects: 55% (160/290) remote: Compressing objects: 56% (163/290) remote: Compressing objects: 57% (166/290) remote: Compressing objects: 58% (169/290) remote: Compressing objects: 59% (172/290) remote: Compressing objects: 60% (174/290) remote: Compressing objects: 61% (177/290) remote: Compressing objects: 62% (180/290) remote: Compressing objects: 63% (183/290) remote: Compressing objects: 64% (186/290) remote: Compressing objects: 65% (189/290) remote: Compressing objects: 66% (192/290) remote: Compressing objects: 67% (195/290) remote: Compressing objects: 68% (198/290) remote: Compressing objects: 69% (201/290) remote: Compressing objects: 70% (203/290) remote: Compressing objects: 71% (206/290) remote: Compressing objects: 72% (209/290) remote: Compressing objects: 73% (212/290) remote: Compressing objects: 74% (215/290) remote: Compressing objects: 75% (218/290) remote: Compressing objects: 76% (221/290) remote: Compressing objects: 77% (224/290) remote: Compressing objects: 78% (227/290) remote: Compressing objects: 79% (230/290) remote: Compressing objects: 80% (232/290) remote: Compressing objects: 81% (235/290) remote: Compressing objects: 82% (238/290) remote: Compressing objects: 83% (241/290) remote: Compressing objects: 84% (244/290) remote: Compressing objects: 85% (247/290) remote: Compressing objects: 86% (250/290) remote: Compressing objects: 87% (253/290) remote: Compressing objects: 88% (256/290) remote: Compressing objects: 89% (259/290) remote: Compressing objects: 90% (261/290) remote: Compressing objects: 91% (264/290) remote: Compressing objects: 92% (267/290) remote: Compressing objects: 93% (270/290) remote: Compressing objects: 94% (273/290) remote: Compressing objects: 95% (276/290) remote: Compressing objects: 96% (279/290) remote: Compressing objects: 97% (282/290) remote: Compressing objects: 98% (285/290) remote: Compressing objects: 99% (288/290) remote: Compressing objects: 100% (290/290) remote: Compressing objects: 100% (290/290), done. Receiving objects: 0% (1/539) Receiving objects: 1% (6/539) Receiving objects: 2% (11/539) Receiving objects: 3% (17/539) Receiving objects: 4% (22/539) Receiving objects: 5% (27/539) Receiving objects: 6% (33/539) Receiving objects: 7% (38/539) Receiving objects: 8% (44/539) Receiving objects: 9% (49/539) Receiving objects: 10% (54/539) Receiving objects: 11% (60/539) Receiving objects: 12% (65/539) Receiving objects: 13% (71/539) Receiving objects: 14% (76/539) Receiving objects: 15% (81/539) Receiving objects: 16% (87/539) Receiving objects: 17% (92/539) Receiving objects: 18% (98/539) Receiving objects: 19% (103/539) Receiving objects: 20% (108/539) Receiving objects: 21% (114/539) Receiving objects: 22% (119/539) Receiving objects: 23% (124/539) Receiving objects: 24% (130/539) Receiving objects: 25% (135/539) Receiving objects: 26% (141/539) Receiving objects: 27% (146/539) Receiving objects: 28% (151/539) Receiving objects: 29% (157/539) Receiving objects: 30% (162/539) Receiving objects: 31% (168/539) Receiving objects: 32% (173/539) Receiving objects: 33% (178/539) Receiving objects: 34% (184/539) Receiving objects: 35% (189/539) Receiving objects: 36% (195/539) Receiving objects: 37% (200/539) Receiving objects: 38% (205/539) Receiving objects: 39% (211/539) Receiving objects: 40% (216/539) Receiving objects: 41% (221/539) Receiving objects: 42% (227/539) Receiving objects: 43% (232/539) Receiving objects: 44% (238/539) Receiving objects: 45% (243/539) Receiving objects: 46% (248/539) Receiving objects: 47% (254/539) Receiving objects: 48% (259/539) Receiving objects: 49% (265/539) Receiving objects: 50% (270/539) Receiving objects: 51% (275/539) Receiving objects: 52% (281/539) Receiving objects: 53% (286/539) Receiving objects: 54% (292/539) Receiving objects: 55% (297/539) Receiving objects: 56% (302/539) Receiving objects: 57% (308/539) Receiving objects: 58% (313/539) Receiving objects: 59% (319/539) Receiving objects: 60% (324/539) Receiving objects: 61% (329/539) Receiving objects: 62% (335/539) Receiving objects: 63% (340/539) Receiving objects: 64% (345/539) Receiving objects: 65% (351/539) Receiving objects: 66% (356/539) Receiving objects: 67% (362/539) Receiving objects: 68% (367/539) Receiving objects: 69% (372/539) Receiving objects: 70% (378/539) Receiving objects: 71% (383/539) Receiving objects: 72% (389/539) Receiving objects: 73% (394/539) Receiving objects: 74% (399/539) Receiving objects: 75% (405/539) Receiving objects: 76% (410/539) Receiving objects: 77% (416/539) Receiving objects: 78% (421/539) remote: Total 539 (delta 283), reused 400 (delta 237), pack-reused 0 (from 0) Receiving objects: 79% (426/539) Receiving objects: 80% (432/539) Receiving objects: 81% (437/539) Receiving objects: 82% (442/539) Receiving objects: 83% (448/539) Receiving objects: 84% (453/539) Receiving objects: 85% (459/539) Receiving objects: 86% (464/539) Receiving objects: 87% (469/539) Receiving objects: 88% (475/539) Receiving objects: 89% (480/539) Receiving objects: 90% (486/539) Receiving objects: 91% (491/539) Receiving objects: 92% (496/539) Receiving objects: 93% (502/539) Receiving objects: 94% (507/539) Receiving objects: 95% (513/539) Receiving objects: 96% (518/539) Receiving objects: 97% (523/539) Receiving objects: 98% (529/539) Receiving objects: 99% (534/539) Receiving objects: 100% (539/539) Receiving objects: 100% (539/539), 393.45 KiB | 1.29 MiB/s, done. Resolving deltas: 0% (0/283) Resolving deltas: 1% (3/283) Resolving deltas: 2% (6/283) Resolving deltas: 3% (9/283) Resolving deltas: 4% (12/283) Resolving deltas: 5% (15/283) Resolving deltas: 6% (17/283) Resolving deltas: 7% (20/283) Resolving deltas: 8% (23/283) Resolving deltas: 9% (26/283) Resolving deltas: 10% (29/283) Resolving deltas: 11% (32/283) Resolving deltas: 12% (34/283) Resolving deltas: 13% (37/283) Resolving deltas: 14% (40/283) Resolving deltas: 15% (43/283) Resolving deltas: 16% (46/283) Resolving deltas: 17% (49/283) Resolving deltas: 18% (51/283) Resolving deltas: 19% (54/283) Resolving deltas: 20% (57/283) Resolving deltas: 21% (60/283) Resolving deltas: 22% (63/283) Resolving deltas: 23% (66/283) Resolving deltas: 24% (68/283) Resolving deltas: 25% (71/283) Resolving deltas: 26% (74/283) Resolving deltas: 27% (77/283) Resolving deltas: 28% (80/283) Resolving deltas: 29% (83/283) Resolving deltas: 30% (85/283) Resolving deltas: 31% (88/283) Resolving deltas: 32% (91/283) Resolving deltas: 33% (94/283) Resolving deltas: 34% (97/283) Resolving deltas: 35% (100/283) Resolving deltas: 36% (102/283) Resolving deltas: 37% (105/283) Resolving deltas: 38% (108/283) Resolving deltas: 39% (111/283) Resolving deltas: 40% (114/283) Resolving deltas: 41% (117/283) Resolving deltas: 42% (119/283) Resolving deltas: 43% (122/283) Resolving deltas: 44% (125/283) Resolving deltas: 45% (128/283) Resolving deltas: 46% (131/283) Resolving deltas: 47% (134/283) Resolving deltas: 48% (136/283) Resolving deltas: 49% (139/283) Resolving deltas: 50% (142/283) Resolving deltas: 51% (145/283) Resolving deltas: 52% (148/283) Resolving deltas: 53% (150/283) Resolving deltas: 54% (153/283) Resolving deltas: 55% (156/283) Resolving deltas: 56% (159/283) Resolving deltas: 57% (162/283) Resolving deltas: 58% (165/283) Resolving deltas: 59% (167/283) Resolving deltas: 60% (170/283) Resolving deltas: 61% (173/283) Resolving deltas: 62% (176/283) Resolving deltas: 63% (179/283) Resolving deltas: 64% (182/283) Resolving deltas: 65% (184/283) Resolving deltas: 66% (187/283) Resolving deltas: 67% (190/283) Resolving deltas: 68% (193/283) Resolving deltas: 69% (196/283) Resolving deltas: 70% (199/283) Resolving deltas: 71% (201/283) Resolving deltas: 72% (204/283) Resolving deltas: 73% (207/283) Resolving deltas: 74% (210/283) Resolving deltas: 75% (213/283) Resolving deltas: 76% (216/283) Resolving deltas: 77% (218/283) Resolving deltas: 78% (221/283) Resolving deltas: 79% (224/283) Resolving deltas: 80% (227/283) Resolving deltas: 81% (230/283) Resolving deltas: 82% (233/283) Resolving deltas: 83% (235/283) Resolving deltas: 84% (238/283) Resolving deltas: 85% (241/283) Resolving deltas: 86% (244/283) Resolving deltas: 87% (247/283) Resolving deltas: 88% (250/283) Resolving deltas: 89% (252/283) Resolving deltas: 90% (255/283) Resolving deltas: 91% (258/283) Resolving deltas: 92% (261/283) Resolving deltas: 93% (264/283) Resolving deltas: 94% (267/283) Resolving deltas: 95% (269/283) Resolving deltas: 96% (272/283) Resolving deltas: 97% (275/283) Resolving deltas: 98% (278/283) Resolving deltas: 99% (281/283) Resolving deltas: 100% (283/283) Resolving deltas: 100% (283/283), done. HEAD is now at b9a12fc updated bash-tools export INPUT_FILE="$SEMAPHORE_YAML_FILE_PATH" export OUTPUT_FILE="${SEMAPHORE_YAML_FILE_PATH}.output.yml" export LOGS_FILE="${SEMAPHORE_YAML_FILE_PATH}.logs.jsonl" cat $INPUT_FILE # # Author: Hari Sekhon # Date: 2020-03-16 14:02:53 +0000 (Mon, 16 Mar 2020) # # vim:ts=2:sts=2:sw=2:et # # https://github.com/HariSekhon/DevOps-Python-tools # # License: see accompanying Hari Sekhon LICENSE file # # If you're using my code you're welcome to connect with me on LinkedIn and optionally send me feedback to help steer this or other code I publish # # https://www.linkedin.com/in/HariSekhon # # ============================================================================ # # S e m a p h o r e C I # ============================================================================ # # https://docs.semaphoreci.com/reference/pipeline-yaml-reference/ version: v1.0 name: DevOps-Python-tools agent: machine: type: e1-standard-2 os_image: ubuntu1804 execution_time_limit: hours: 3 blocks: - name: Linux build run: when: "branch = 'master' AND change_in('/', {exclude: ['**/*.md']})" #execution_time_limit: # hours: 2 task: #env_vars: # $PATH selects /usr/bin/python and /usr/local/bin/pip which are mismatched versions of Python #- name: PYTHON # value: python3 #- name: PIP # value: pip3 prologue: commands: - cache restore # each job is separate and could be run on a separate machine so all steps must be together jobs: - name: build commands: - checkout - setup/ci_bootstrap.sh - make init - make ci - make test epilogue: commands: - cache store - name: Mac build run: when: "branch = 'master'" task: # because otherwise on Mac it uses /usr/bin/python (2.7) but /usr/local/bin/pip (python 3.8) #env_vars: # to match /usr/local/bin/pip version from $PATH #- name: PYTHON # value: python3 # must be quoted to force string, otherwise pipeline fails to run with this parsing error: # Error: [{"Type mismatch. Expected String but got Integer.", "#/blocks/1/task/env_vars/1/value"}] #- name: DEBUG # value: "1" agent: machine: type: a1-standard-4 os_image: macos-xcode12 prologue: commands: - cache restore # fix for: # pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available. - brew install openssl - brew reinstall python - brew reinstall wget # avoid Mac SSL errors: # # ERROR: Loading command: install (LoadError) # dlopen(/Users/semaphore/.rbenv/versions/2.5.1/lib/ruby/2.5.0/x86_64-darwin18/openssl.bundle, 9): Library not loaded: /usr/local/opt/openssl/lib/libssl.1.0.0.dylib # Referenced from: /Users/semaphore/.rbenv/versions/2.5.1/lib/ruby/2.5.0/x86_64-darwin18/openssl.bundle # Reason: image not found - /Users/semaphore/.rbenv/versions/2.5.1/lib/ruby/2.5.0/x86_64-darwin18/openssl.bundle # ERROR: While executing gem ... (NoMethodError) # undefined method `invoke_with_build_args' for nil:NilClass# # - rbenv global system # also considered this: # - for version in $(rbenv versions | grep -v system | sed 's/^\*//'); do yes | rbenv uninstall "$version"; rbenv install "$version"; done # # fix for python vs pip version mismatch - ln -svf -- /usr/local/bin/python3 /usr/local/bin/python jobs: - name: build commands: - checkout - make init - make ci - make test epilogue: commands: - cache store echo "Compiling $INPUT_FILE into $OUTPUT_FILE and storring logs to $LOGS_FILE" Compiling .semaphore/semaphore.yml into .semaphore/semaphore.yml.output.yml and storring logs to .semaphore/semaphore.yml.logs.jsonl spc compile --input $INPUT_FILE --output $OUTPUT_FILE --logs $LOGS_FILE Extracting commands from commands_files in .semaphore/semaphore.yml. Found commands_file fields at 0 locations. Extracting commands from commands_files. Evaluating template expressions in .semaphore/semaphore.yml. Found template expressions at 0 locations. Substituting templates with their values. Evaluating change_in expressions in .semaphore/semaphore.yml. Found when expressions at 2 locations. 001 | Location: [blocks 0 run when] | File: .semaphore/semaphore.yml | Expression: branch = 'master' AND change_in('/', {exclude: ['**/*.md']}) 002 | Location: [blocks 1 run when] | File: .semaphore/semaphore.yml | Expression: branch = 'master' Evaluating when expressions. 001 | When Expression: branch = 'master' AND change_in('/', {exclude: ['**/*.md']}) | | change_in(["/",{"exclude":["**/*.md"]}]) | Running git diff --shortstat ac683274c27147af43de231a903b2e6945bd63b3...b9a12fcc4a414016b44da2af0cd060f5b97dbe57 | Running git diff --name-only ac683274c27147af43de231a903b2e6945bd63b3...b9a12fcc4a414016b44da2af0cd060f5b97dbe57 | | Comparing change_in with git diff | (match) bash-tools | | Result: true 002 | When Expression: branch = 'master' Exporting environment variables Exporting SEMAPHORE_JOB_RESULT export BASE_NAME=$SEMAPHORE_PIPELINE_ID-$(basename $INPUT_FILE) export ARTIFACT_LOG_DESTINATION="compilation/$BASE_NAME.logs" echo "Uploading $LOGS_FILE into $ARTIFACT_LOG_DESTINATION" Uploading .semaphore/semaphore.yml.logs.jsonl into compilation/9bf848a5-e35f-4a6d-af25-0e5294caaeaf-semaphore.yml.logs artifact push workflow $LOGS_FILE -d $ARTIFACT_LOG_DESTINATION [Nov 22 13:34:27.840] Successfully pushed artifact for current workflow. [Nov 22 13:34:27.840] * Local source: .semaphore/semaphore.yml.logs.jsonl. [Nov 22 13:34:27.840] * Remote destination: artifacts/workflows/50bd877f-3bf7-465e-a16f-a4929a179df5/compilation/9bf848a5-e35f-4a6d-af25-0e5294caaeaf-semaphore.yml.logs. export ARTIFACT_YAML_DESTINATION="compilation/$BASE_NAME" echo "Uploading $OUTPUT_FILE into $ARTIFACT_YAML_DESTINATION" Uploading .semaphore/semaphore.yml.output.yml into compilation/9bf848a5-e35f-4a6d-af25-0e5294caaeaf-semaphore.yml artifact push workflow $OUTPUT_FILE -d $ARTIFACT_YAML_DESTINATION [Nov 22 13:34:28.370] Successfully pushed artifact for current workflow. [Nov 22 13:34:28.370] * Local source: .semaphore/semaphore.yml.output.yml. [Nov 22 13:34:28.370] * Remote destination: artifacts/workflows/50bd877f-3bf7-465e-a16f-a4929a179df5/compilation/9bf848a5-e35f-4a6d-af25-0e5294caaeaf-semaphore.yml.