release 0.5.2 (#2086) #1075
This file contains 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: ci-cd | |
on: | |
push: | |
branches: | |
- "main" | |
tags: | |
- "v*" | |
workflow_dispatch: | |
jobs: | |
build-axolotl: | |
if: ${{ ! contains(github.event.commits[0].message, '[skip docker]') && github.repository_owner == 'axolotl-ai-cloud' }} | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- cuda: 121 | |
cuda_version: 12.1.1 | |
python_version: "3.10" | |
pytorch: 2.3.1 | |
axolotl_extras: mamba-ssm | |
- cuda: 121 | |
cuda_version: 12.1.1 | |
python_version: "3.11" | |
pytorch: 2.3.1 | |
axolotl_extras: mamba-ssm | |
is_latest: true | |
- cuda: 124 | |
cuda_version: 12.4.1 | |
python_version: "3.11" | |
pytorch: 2.4.1 | |
axolotl_extras: | |
- cuda: 124 | |
cuda_version: 12.4.1 | |
python_version: "3.11" | |
pytorch: 2.5.1 | |
axolotl_extras: | |
runs-on: axolotl-gpu-runner | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Docker metadata | |
id: metadata | |
uses: docker/metadata-action@v5 | |
with: | |
images: | | |
winglian/axolotl | |
axolotlai/axolotl | |
tags: | | |
type=ref,event=branch | |
type=semver,pattern={{version}} | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v3 | |
- name: Login to Docker Hub | |
uses: docker/login-action@v3 | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_TOKEN }} | |
# guidance for testing before pushing: https://docs.docker.com/build/ci/github-actions/test-before-push/ | |
- name: Build and export to Docker | |
uses: docker/build-push-action@v5 | |
with: | |
context: . | |
build-args: | | |
BASE_TAG=${{ github.ref_type == 'tag' && 'main' || github.ref_name }}-base-py${{ matrix.python_version }}-cu${{ matrix.cuda }}-${{ matrix.pytorch }} | |
CUDA=${{ matrix.cuda }} | |
PYTORCH_VERSION=${{ matrix.pytorch }} | |
AXOLOTL_ARGS=${{ matrix.axolotl_args }} | |
file: ./docker/Dockerfile | |
push: ${{ github.event_name != 'pull_request' }} | |
tags: | | |
${{ steps.metadata.outputs.tags }}-py${{ matrix.python_version }}-cu${{ matrix.cuda }}-${{ matrix.pytorch }}${{ matrix.axolotl_extras != '' && '-' || '' }}${{ matrix.axolotl_extras }} | |
${{ steps.metadata.outputs.tags }}-py${{ matrix.python_version }}-cu${{ matrix.cuda }}-${{ matrix.pytorch }} | |
${{ (matrix.is_latest) && format('{0}-latest', steps.metadata.outputs.tags) || '' }} | |
labels: ${{ steps.metadata.outputs.labels }} | |
build-axolotl-cloud: | |
needs: build-axolotl | |
if: ${{ ! contains(github.event.commits[0].message, '[skip docker]') && github.repository_owner == 'axolotl-ai-cloud' }} | |
# this job needs to be run on self-hosted GPU runners... | |
strategy: | |
matrix: | |
include: | |
- cuda: 121 | |
cuda_version: 12.1.1 | |
python_version: "3.10" | |
pytorch: 2.3.1 | |
axolotl_extras: | |
- cuda: 121 | |
cuda_version: 12.1.1 | |
python_version: "3.11" | |
pytorch: 2.3.1 | |
axolotl_extras: | |
is_latest: true | |
- cuda: 124 | |
cuda_version: 12.4.1 | |
python_version: "3.11" | |
pytorch: 2.4.1 | |
axolotl_extras: | |
- cuda: 124 | |
cuda_version: 12.4.1 | |
python_version: "3.11" | |
pytorch: 2.5.1 | |
axolotl_extras: | |
runs-on: axolotl-gpu-runner | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Docker metadata | |
id: metadata | |
uses: docker/metadata-action@v5 | |
with: | |
images: | | |
winglian/axolotl-cloud | |
axolotlai/axolotl-cloud | |
tags: | | |
type=ref,event=branch | |
type=semver,pattern={{version}} | |
- name: Login to Docker Hub | |
uses: docker/login-action@v3 | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_TOKEN }} | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v3 | |
- name: Build | |
uses: docker/build-push-action@v5 | |
with: | |
context: . | |
build-args: | | |
BASE_TAG=${{ github.ref_type == 'tag' && 'main' || github.ref_name }}-py${{ matrix.python_version }}-cu${{ matrix.cuda }}-${{ matrix.pytorch }}${{ matrix.axolotl_extras != '' && '-' || '' }}${{ matrix.axolotl_extras }} | |
CUDA=${{ matrix.cuda }} | |
file: ./docker/Dockerfile-cloud | |
push: ${{ github.event_name != 'pull_request' }} | |
tags: | | |
${{ steps.metadata.outputs.tags }}-py${{ matrix.python_version }}-cu${{ matrix.cuda }}-${{ matrix.pytorch }}${{ matrix.axolotl_extras != '' && '-' || '' }}${{ matrix.axolotl_extras }} | |
${{ (matrix.is_latest) && format('{0}-latest', steps.metadata.outputs.tags) || '' }} | |
labels: ${{ steps.metadata.outputs.labels }} | |
build-axolotl-cloud-no-tmux: | |
needs: build-axolotl | |
if: ${{ ! contains(github.event.commits[0].message, '[skip docker]') && github.repository_owner == 'axolotl-ai-cloud' }} | |
# this job needs to be run on self-hosted GPU runners... | |
strategy: | |
matrix: | |
include: | |
- cuda: 121 | |
cuda_version: 12.1.1 | |
python_version: "3.11" | |
pytorch: 2.3.1 | |
axolotl_extras: | |
runs-on: axolotl-gpu-runner | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Docker metadata | |
id: metadata | |
uses: docker/metadata-action@v5 | |
with: | |
images: | | |
winglian/axolotl-cloud-term | |
axolotlai/axolotl-cloud-term | |
tags: | | |
type=ref,event=branch | |
type=semver,pattern={{version}} | |
- name: Login to Docker Hub | |
uses: docker/login-action@v3 | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_TOKEN }} | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v3 | |
- name: Build | |
uses: docker/build-push-action@v5 | |
with: | |
context: . | |
build-args: | | |
BASE_TAG=${{ github.ref_type == 'tag' && 'main' || github.ref_name }}-py${{ matrix.python_version }}-cu${{ matrix.cuda }}-${{ matrix.pytorch }}${{ matrix.axolotl_extras != '' && '-' || '' }}${{ matrix.axolotl_extras }} | |
CUDA=${{ matrix.cuda }} | |
file: ./docker/Dockerfile-cloud-no-tmux | |
push: ${{ github.event_name != 'pull_request' }} | |
tags: | | |
${{ steps.metadata.outputs.tags }}-py${{ matrix.python_version }}-cu${{ matrix.cuda }}-${{ matrix.pytorch }}${{ matrix.axolotl_extras != '' && '-' || '' }}${{ matrix.axolotl_extras }} | |
${{ (matrix.is_latest) && format('{0}-latest', steps.metadata.outputs.tags) || '' }} | |
labels: ${{ steps.metadata.outputs.labels }} |