Skip to content

chore: build and push images on PR #441

chore: build and push images on PR

chore: build and push images on PR #441

Workflow file for this run

name: Release
on:
pull_request:
types: [opened, synchronize, closed]
branches: [main]
env:
TUTOR_ROOT: ./.ci/
jobs:
release:
if: github.event.pull_request.merged == true && startsWith(github.head_ref, 'bot/v')
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: actions/checkout@v4
- name: Create tag
id: tag_version
uses: mathieudutour/[email protected]
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
default_bump: false
default_prerelease_bump: false
- name: Create a GitHub release
if: steps.tag_version.outputs.new_tag
uses: ncipollo/release-action@v1
with:
tag: ${{ steps.tag_version.outputs.new_tag }}
name: Release ${{ steps.tag_version.outputs.new_tag }}
body: ${{ steps.tag_version.outputs.changelog }}
- name: Checkout
uses: actions/checkout@v4
- name: setup python
uses: actions/setup-python@v5
with:
python-version: 3.12
- name: Install pip
run: pip install -r requirements/pip.txt
- name: Build package
run: make build-pythonpackage
- name: Publish to PyPI
uses: pypa/gh-action-pypi-publish@master
with:
user: __token__
password: ${{ secrets.PYPI_UPLOAD_TOKEN }}
build-aspects:
runs-on: ubuntu-latest
needs: release
steps:
- name: Log in to Docker Hub
uses: docker/login-action@343f7c4344506bcbf9b4de18042ae17996df046d
with:
username: ${{ secrets.EDUNEXT_DOCKER_USERNAME }}
password: ${{ secrets.EDUNEXT_DOCKER_PASSWORD }}
- name: Checkout
uses: actions/checkout@v4
- name: Extract Commit Hash
id: extract_commit_hash
run: echo "::set-output name=hash::$(git rev-parse --short HEAD)"
- name: Update ASPECTS_VERSION
run: |
sed -i 's/ASPECTS_VERSION: .*/ASPECTS_VERSION: ${{ steps.extract_commit_hash.outputs.hash }}/' .ci/config.yml
- name: setup python
uses: actions/setup-python@v5
with:
python-version: 3.8
- name: Install aspects
run: pip install .
- name: Save config
run: tutor config save
- name: Setup Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Build Aspects Docker Images
run: |
tutor images build aspects --cache-to-registry
tutor images push aspects
build-superset:
runs-on: ubuntu-latest
needs: release
steps:
- name: Log in to Docker Hub
uses: docker/login-action@343f7c4344506bcbf9b4de18042ae17996df046d
with:
username: ${{ secrets.EDUNEXT_DOCKER_USERNAME }}
password: ${{ secrets.EDUNEXT_DOCKER_PASSWORD }}
- name: Checkout
uses: actions/checkout@v4
- name: Update ASPECTS_VERSION
run: |
ASPECTS_VERSION=$(git rev-parse --short HEAD)
sed -i "s/ASPECTS_VERSION: .*/ASPECTS_VERSION: $ASPECTS_VERSION/" .ci/config.yml
- name: setup python
uses: actions/setup-python@v5
with:
python-version: 3.8
- name: Install aspects
run: pip install .
- name: Save config
run: tutor config save
- name: Setup Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Build Superset Docker Image
run: |
tutor images build aspects-superset --cache-to-registry
tutor images push aspects-superset
build-openedx:
runs-on: ubuntu-latest
needs: release
steps:
- name: Log in to Docker Hub
uses: docker/login-action@343f7c4344506bcbf9b4de18042ae17996df046d
with:
username: ${{ secrets.EDUNEXT_DOCKER_USERNAME }}
password: ${{ secrets.EDUNEXT_DOCKER_PASSWORD }}
- name: Checkout
uses: actions/checkout@v4
- name: Update ASPECTS_VERSION
run: |
ASPECTS_VERSION=$(git rev-parse --short HEAD)
sed -i "s/ASPECTS_VERSION: .*/ASPECTS_VERSION: $ASPECTS_VERSION/" .ci/config.yml
- name: setup python
uses: actions/setup-python@v5
with:
python-version: 3.12
- name: Install aspects
run: pip install .
- name: Save config
run: tutor config save
- name: Setup Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Build Open edX Docker Images
run: |
tutor images build openedx --cache-to-registry
tutor images push openedx
build-openedx-dev:
runs-on: ubuntu-latest
needs: release
steps:
- name: Log in to Docker Hub
uses: docker/login-action@343f7c4344506bcbf9b4de18042ae17996df046d
with:
username: ${{ secrets.EDUNEXT_DOCKER_USERNAME }}
password: ${{ secrets.EDUNEXT_DOCKER_PASSWORD }}
- name: Checkout
uses: actions/checkout@v4
- name: Update ASPECTS_VERSION
run: |
ASPECTS_VERSION=$(git rev-parse --short HEAD)
sed -i "s/ASPECTS_VERSION: .*/ASPECTS_VERSION: $ASPECTS_VERSION/" .ci/config.yml
- name: setup python
uses: actions/setup-python@v5
with:
python-version: 3.12
- name: Install aspects
run: pip install .
- name: Save config
run: tutor config save
- name: Setup Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Build Open edX Docker Images
run: |
tutor images build openedx-dev --cache-to-registry