td_env cpu docker dev #80
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: td_env docker dev | |
on: | |
# push: | |
# branches: | |
# - dev | |
workflow_dispatch: | |
jobs: | |
build: | |
name: Build on Ubuntu | |
runs-on: ubuntu-22.04 | |
steps: | |
# https://github.com/jlumbroso/free-disk-space/issues/14 | |
- name: Update Package List and Remove Dotnet | |
run: | | |
sudo apt-get update | |
sudo apt-get remove -y '^dotnet-.*' | |
- name: Free Disk Space (Ubuntu) | |
uses: jlumbroso/free-disk-space@main | |
with: | |
# this might remove tools that are actually needed, | |
# if set to "true" but frees about 6 GB | |
tool-cache: false | |
# all of these default to true, but feel free to set to | |
# "false" if necessary for your workflow | |
android: true | |
dotnet: true | |
haskell: true | |
large-packages: true | |
docker-images: true | |
swap-storage: true | |
- name: Check Disk Space | |
# run: df -h && sudo apt-get clean && df -h | |
run: df -h | |
- name: Docker login | |
run: echo '${{ secrets.DOCKERHUB_ACCESSTOK }}' | docker login --username heather999 --password-stdin | |
#- name : Docker prune | |
# run: sudo docker system prune --all --force && df -h | |
- name: checkout td_env | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
ref: dev | |
- name : Get weekly number and date | |
run: | | |
echo "LSST_TAG=w_2022_32" >> $GITHUB_ENV | |
echo "DATE_TAG=$(date "+%F")" >> $GITHUB_ENV | |
- name: update docker image | |
run: | | |
cd $GITHUB_WORKSPACE | |
ls $GITHUB_WORKSPACE | |
echo $GITHUB_WORKSPACE | |
ls $GITHUB_WORKSPACE/conda | |
docker run -u root -v $GITHUB_WORKSPACE:$GITHUB_WORKSPACE --name="install-mpich" lsstsqre/centos:7-stack-lsst_distrib-w_2022_32 /bin/bash /$GITHUB_WORKSPACE/docker/install-mpich.sh | |
docker commit -m"initial testing" install-mpich lsstdesc/td-dev:mpich | |
docker run -u lsst -v $GITHUB_WORKSPACE:$GITHUB_WORKSPACE -w $GITHUB_WORKSPACE/conda --name="td-test-env" lsstdesc/td-dev:mpich /bin/bash /$GITHUB_WORKSPACE/docker/update-docker.sh ${{env.LSST_TAG}} | |
docker commit -m"initial testing" td-test-env lsstdesc/td-dev:test | |
docker run -u lsst -v $GITHUB_WORKSPACE:$GITHUB_WORKSPACE -w $GITHUB_WORKSPACE/conda --name="td-gpu-env" lsstdesc/td-dev:test /bin/bash /$GITHUB_WORKSPACE/docker/add-gpu-env.sh | |
docker commit -m"initial testing" td-gpu-env lsstdesc/td-dev:gpu | |
docker rmi -f lsstdesc/td-dev:mpich | |
docker rmi -f lsstdesc/td-dev:test | |
docker run -u lsst -w /opt/lsst/software/stack --name="td-setwd" lsstdesc/td-dev:gpu /bin/bash | |
docker commit -m"initial testing" td-setwd lsstdesc/td-env:${{env.LSST_TAG}}-${{env.DATE_TAG}}-dev | |
docker rmi -f lsstdesc/td-dev:gpu | |
- name: Test and push | |
run: | | |
docker run --rm lsstdesc/td-env:${{env.LSST_TAG}}-${{env.DATE_TAG}}-dev /bin/bash -c "source /opt/lsst/software/stack/loadLSST.bash && setup lsst_distrib && python -c 'import coloredlogs'" | |
docker push lsstdesc/td-env:${{env.LSST_TAG}}-${{env.DATE_TAG}}-dev | |
docker tag lsstdesc/td-env:${{env.LSST_TAG}}-${{env.DATE_TAG}}-dev lsstdesc/td-env:dev | |
docker push lsstdesc/td-env:dev | |
# mkdir -p /tmp/desc | |
# docker save lsstdesc/td-env:dev > /tmp/desc/lsstdesc-td-env-dev.tar | |
# - name: Upload docker tarball | |
# uses: actions/upload-artifact@v3 | |
# with: | |
# name: lsstdesc-td-env-dev | |
# path: /tmp/desc/lsstdesc-td-env-dev.tar |