add back build and test jobs since we can find correct pyne image now #27
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: Create VirtualBox disk image from Dockerfile | |
on: | |
# allows us to run workflows manually | |
workflow_dispatch: | |
push: | |
paths: | |
- 'docker/*' | |
- '.github/workflows/virtualbox_image.yml' | |
env: | |
VM_PASSWORD: temppwd | |
DOCKER_IMAGE_BASENAME: ghcr.io/${{ github.repository_owner }}/pyne_ubuntu_22.04_py3 | |
DOCKER_IMAGE_TAG: :refs_heads_${{ github.ref_name }}-bk0 | |
jobs: | |
pyne_image_build: | |
runs-on: ubuntu-latest | |
outputs: | |
image_tag: ${{ steps.output_tag.outputs.image_tag }} | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v3 | |
- name: Log in to the Container registry | |
uses: docker/login-action@v2 | |
with: | |
registry: ghcr.io | |
username: ${{ github.repository_owner }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Build PyNE docker image | |
uses: firehed/multistage-docker-build-action@v1 | |
id: build_pyne | |
with: | |
repository: ${{ env.DOCKER_IMAGE_BASENAME }} | |
stages: base_python, moab, dagmc, openmc | |
server-stage: pyne | |
quiet: false | |
tag-latest-on-default: false | |
dockerfile: docker/ubuntu_22.04-dev.dockerfile | |
- id: output_tag | |
run: | | |
echo "image_tag=$DOCKER_IMAGE_TAG" >> $GITHUB_OUTPUT | |
BuildTest: | |
needs: [pyne_image_build] | |
runs-on: ubuntu-latest | |
container: | |
image: ghcr.io/${{ github.repository_owner }}/pyne_ubuntu_22.04_py3/pyne${{ needs.pyne_image_build.outputs.image_tag }} | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v3 | |
- name: use BuildTest composite action | |
uses: ./.github/actions/build-test | |
with: | |
stage: ${{ matrix.stage }} | |
hdf5: ${{ matrix.hdf5 }} | |
virtualbox_image_build: | |
needs: [BuildTest] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v3 | |
- name: Log in to the Container registry | |
uses: docker/login-action@v2 | |
with: | |
registry: ghcr.io | |
username: ${{ github.actor }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Build VirtualBox image using d2vm | |
run: | | |
sudo apt-get update | |
sudo apt-get install -y --fix-missing \ | |
util-linux \ | |
udev \ | |
parted \ | |
e2fsprogs \ | |
mount \ | |
tar \ | |
extlinux \ | |
qemu-utils | |
curl -sL "https://github.com/linka-cloud/d2vm/releases/download/v0.2.0/d2vm_v0.2.0_linux_amd64.tar.gz" | tar -xvz d2vm | |
sudo mv d2vm /usr/local/bin/ | |
sudo d2vm convert ghcr.io/${{ github.actor }}/pyne_ubuntu_22.04_py3/pyne${{ env.DOCKER_IMAGE_TAG }} -p ${{ env.VM_PASSWORD }} -o pyne.vdi | |
- name: Upload VirtualBox image as artifact | |
uses: actions/upload-artifact@v3 | |
with: | |
name: virtualbox_image | |
path: pyne.vdi | |