Github Action fix? #7
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: Build AI Toolbox image for benchmarking and debugging | |
| on: | |
| push: | |
| branches: | |
| - master | |
| schedule: | |
| - cron: '0 0 */7 * *' | |
| workflow_dispatch: {} | |
| env: | |
| REGISTRY_USER: aleskandrox | |
| IMAGE_REGISTRY: quay.io | |
| IMAGE_NAME: aitools | |
| REGISTRY_PASSWORD: ${{ secrets.REGISTRY_PASSWORD }} | |
| jobs: | |
| build-ai-toolbox-image: | |
| runs-on: ubuntu-latest | |
| name: Build and Push AI toolbox image | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v3 | |
| - name: Free up space | |
| run: | | |
| set +e | |
| echo "==============================================================================" | |
| echo "Freeing up disk space on CI system" | |
| echo "==============================================================================" | |
| echo "Listing 100 largest packages" | |
| dpkg-query -Wf '${Installed-Size}\t${Package}\n' | sort -n | tail -n 100 | |
| df -h | |
| echo "Removing large packages" | |
| sudo apt-get remove -y '^dotnet-.*' | |
| sudo apt-get remove -y '^llvm-.*' | |
| sudo apt-get remove -y 'php.*' | |
| sudo apt-get remove -y azure-cli google-cloud-sdk hhvm google-chrome-stable firefox powershell mono-devel | |
| sudo apt-get autoremove -y | |
| sudo apt-get clean | |
| df -h | |
| echo "Removing large directories" | |
| # deleting 15GB | |
| rm -rf /usr/share/dotnet/ | |
| rm -rf /opt/hostedtoolcache | |
| df -h | |
| - name: Set versioned tag | |
| id: versioned-tag | |
| run: | | |
| VERSIONED_TAG=$(date -u --iso-8601=minutes | sed 's/://g;s/+.*$//')-${GITHUB_SHA} | |
| echo "VERSIONED_TAG=${VERSIONED_TAG}" >> $GITHUB_OUTPUT | |
| - name: Build image | |
| uses: redhat-actions/buildah-build@v2 | |
| id: build-image | |
| with: | |
| image: ${{ env.IMAGE_REGISTRY }}/${{ env.REGISTRY_USER }}/${{ env.IMAGE_NAME }} | |
| oci: true | |
| layers: true | |
| tags: latest ${{ steps.versioned-tag.outputs.VERSIONED_TAG }} | |
| containerfiles: | | |
| ./ai_toolbox.Containerfile | |
| - name: Push to registry | |
| uses: redhat-actions/push-to-registry@v2 | |
| with: | |
| tags: >- | |
| ${{ env.IMAGE_REGISTRY }}/${{ env.REGISTRY_USER }}/${{ env.IMAGE_NAME }}:latest | |
| ${{ env.IMAGE_REGISTRY }}/${{ env.REGISTRY_USER }}/${{ env.IMAGE_NAME }}:${{ steps.versioned-tag.outputs.VERSIONED_TAG }} | |
| username: ${{ env.REGISTRY_USER }} | |
| password: ${{ secrets.REGISTRY_PASSWORD }} |