fix: TOOLS-3186 Remove pyasn1 dependency, replace with cryptography library, and remove deprecated cert blacklist #1287
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Mac Artifact | |
| on: | |
| repository_dispatch: | |
| types: mac-build | |
| push: | |
| branches: [actionsHub, master, "bugfix-*"] | |
| pull_request: | |
| branches: [master] | |
| workflow_call: | |
| inputs: | |
| submodule: | |
| description: The directory of the submodule, if this workflow is being called on a submodule | |
| required: false | |
| type: string | |
| jobs: | |
| build: | |
| strategy: | |
| matrix: | |
| os: [macos-15-intel, macos-14, macos-15, macos-26] | |
| runs-on: ${{ matrix.os }} | |
| steps: | |
| - name: Harden the runner (Audit all outbound calls) | |
| uses: step-security/harden-runner@df199fb7be9f65074067a9eb93f12bb4c5547cf2 # v2.13.3 | |
| with: | |
| egress-policy: audit | |
| - name: Get checkout directory | |
| uses: step-security/action-cond@45aa5a709bd075f11c74285d8b0ca4d527e5fbcf # v1.2.4 | |
| id: checkout-dir | |
| with: | |
| cond: ${{ inputs.submodule != '' }} | |
| if_true: aerospike-tools # In this case we are expecting to checkout the tools package. | |
| if_false: admin | |
| - name: Get asadm working directory | |
| uses: step-security/action-cond@45aa5a709bd075f11c74285d8b0ca4d527e5fbcf # v1.2.4 | |
| id: working-dir | |
| with: | |
| cond: ${{ inputs.submodule != '' }} | |
| if_true: aerospike-tools/${{ inputs.submodule }} # In this case we are expecting to checkout the tools package. | |
| if_false: admin | |
| - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.3.1 | |
| with: | |
| path: ${{ steps.checkout-dir.outputs.value }} | |
| fetch-depth: 0 | |
| - name: Checkout ${{ steps.working-dir.outputs.value }} | |
| working-directory: ${{ steps.checkout-dir.outputs.value }} | |
| run: | | |
| git config --global url."https://github.com/".insteadOf "git@github.com:" | |
| git submodule update --init --recursive -- ${{ inputs.submodule || '.' }} | |
| - name: Print and get version | |
| working-directory: ${{ steps.working-dir.outputs.value }} | |
| id: tag | |
| run: | | |
| git describe --tags --always --abbrev=9 | |
| echo "tag=$(git describe --tags --always --abbrev=9)" >> $GITHUB_OUTPUT | |
| - uses: kenchan0130/actions-system-info@b98fe44bc35efcc60a9828cf4a04783a8b370bde # v1.3.0 | |
| id: system-info | |
| - name: Get Python version from Pipfile | |
| working-directory: ${{ steps.working-dir.outputs.value }} | |
| run: | | |
| git rev-parse HEAD | |
| echo "PYTHON_VERSION=$(grep "python_version" Pipfile | cut -d ' ' -f 3 - | tr -d '"')" >> $GITHUB_ENV | |
| echo ${{ steps.system-info.outputs.name }} | |
| echo ${{ steps.system-info.outputs.kernel-release }} | |
| echo ${{ steps.system-info.outputs.platform }} | |
| - name: Setup Python | |
| uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0 | |
| with: | |
| python-version: ${{ env.PYTHON_VERSION }} | |
| - name: Cache asadm and asinfo | |
| uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0 | |
| id: cache-asadm-asinfo | |
| env: | |
| cache-name: cache-asadm-asinfo | |
| cache-index: "4" | |
| with: | |
| path: | | |
| ${{ steps.working-dir.outputs.value }}/build/bin | |
| key: ${{ env.cache-name }}-${{ env.cache-index }}-${{ matrix.os }}-${{ runner.arch }}-${{ steps.system-info.outputs.release }}-${{ env.PYTHON_VERSION }}-${{ steps.tag.outputs.tag }} | |
| - name: Pipenv setup | |
| if: steps.cache-asadm-asinfo.outputs.cache-hit != 'true' | |
| working-directory: ${{ steps.working-dir.outputs.value }} | |
| run: | | |
| brew install pipenv | |
| pipenv install --dev | |
| - name: Build asadm | |
| if: steps.cache-asadm-asinfo.outputs.cache-hit != 'true' | |
| working-directory: ${{ steps.working-dir.outputs.value }} | |
| run: | | |
| make one-dir | |
| ls -al build/bin/asadm || true | |
| # - name: Setup tmate session | |
| # uses: mxschmitt/action-tmate@v3 | |
| - name: Sanity Test tools | |
| working-directory: ${{ steps.working-dir.outputs.value }} | |
| run: | | |
| sudo make install | |
| asadm -e "info" || true | |
| asadm -e "info" 2>&1 | grep "Not able to connect" | |
| asinfo || true | |
| asinfo 2>&1 | grep "Not able to connect" | |
| - name: Create .tar | |
| working-directory: ${{ steps.working-dir.outputs.value }} | |
| run: | | |
| tar -C build/bin/ -cvf asadm.tar asadm | |
| - uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2 | |
| with: | |
| name: ${{ steps.system-info.outputs.platform }}-${{ runner.arch }}-${{ matrix.os }}-${{ steps.system-info.outputs.release }}-asadm | |
| path: ${{ steps.working-dir.outputs.value }}/asadm.tar | |
| if-no-files-found: error |