From 7a700f9200935c065475dd31cb0a88ac75c3f913 Mon Sep 17 00:00:00 2001 From: Alex Chapin Date: Thu, 18 Jun 2026 16:03:36 -0400 Subject: [PATCH 1/3] Skip deploy docker step for apptainer only --- .github/workflows/docker-openstudio.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/docker-openstudio.yml b/.github/workflows/docker-openstudio.yml index f62b10c..a685bd9 100644 --- a/.github/workflows/docker-openstudio.yml +++ b/.github/workflows/docker-openstudio.yml @@ -105,7 +105,7 @@ jobs: docker run -v "$(pwd)/test":/var/simdata/openstudio openstudio:latest ./test_gemfile.sh - name: deploy docker - if: ${{ success() && (github.ref == 'refs/heads/master' || github.ref == 'refs/heads/develop' || github.ref == 'refs/heads/custom_branch_name') }} + if: ${{ success() && (github.ref == 'refs/heads/master' || github.ref == 'refs/heads/develop' || github.ref == 'refs/heads/custom_branch_name') && !(github.event_name == 'workflow_dispatch' && inputs.apptainer_only) }} shell: bash run: | set -euo pipefail @@ -113,6 +113,7 @@ jobs: env: DOCKER_PASS: ${{ secrets.DOCKER_PASS }} DOCKER_USER: ${{ secrets.DOCKER_USER }} + DOCKER_MANUAL_IMAGE_TAG: ${{ inputs.docker_manual_image_tag }} apptainer: runs-on: ubuntu-24.04 From 98e832e463de806b593c7d5cbce2121d34882e7c Mon Sep 17 00:00:00 2001 From: Alex Chapin Date: Wed, 15 Jul 2026 16:49:23 -0400 Subject: [PATCH 2/3] fix: update AWS credentials action version and correct repository links in README --- .github/workflows/docker-openstudio.yml | 2 +- README.md | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/docker-openstudio.yml b/.github/workflows/docker-openstudio.yml index a685bd9..fec8d78 100644 --- a/.github/workflows/docker-openstudio.yml +++ b/.github/workflows/docker-openstudio.yml @@ -154,7 +154,7 @@ jobs: path: OpenStudio-${{ env.OPENSTUDIO_VERSION }}${{ env.OPENSTUDIO_VERSION_EXT }}.${{ env.OPENSTUDIO_SHA }}-Apptainer.sif - name: Configure AWS credentials - uses: aws-actions/configure-aws-credentials@v3 + uses: aws-actions/configure-aws-credentials@v4 with: aws-region: ${{ secrets.AWS_DEFAULT_REGION }} role-to-assume: arn:aws:iam::471211731895:role/OpenStudioGitHubActionsRole diff --git a/README.md b/README.md index 300ae1a..6e2fbab 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # OpenStudio -[![openstudio-docker](https://github.com/NREL/docker-openstudio/actions/workflows/docker-openstudio.yml/badge.svg)](https://github.com/NREL/docker-openstudio/actions/workflows/docker-openstudio.yml) +[![openstudio-docker](https://github.com/NatLabRockies/docker-openstudio/actions/workflows/docker-openstudio.yml/badge.svg)](https://github.com/NatLabRockies/docker-openstudio/actions/workflows/docker-openstudio.yml) This repo provides a container for OpenStudio as well as several dependencies, including Ruby 2.x, Bundler, build-essentials and various development libraries for gem support. @@ -16,7 +16,7 @@ Below is a table of the various docker tags and their meanings as seen on [this |---------|-----------------------------------------------------------------------------------------| | x.y.z | Build of official OpenStudio release (recommended use) | | latest | Latest official release of OpenStudio (e.g. 2.5.1) | -| develop | Release of [develop branch](https://github.com/NREL/docker-openstudio/tree/develop) | +| develop | Release of [develop branch](https://github.com/NatLabRockies/docker-openstudio/tree/develop) | ## Building OpenStudio Container @@ -84,7 +84,7 @@ If gem dependencies are required as part of the CLI outside of those # Issues -Please submit issues on the project's [Github](https://github.com/nrel/docker-openstudio) page. +Please submit issues on the project's [Github](https://github.com/NatLabRockies/docker-openstudio) page. ## Building and publishing specific OpenStudio versions From a3c1a4b61a9c44b8a0a270371330a9b127aae98f Mon Sep 17 00:00:00 2001 From: Alex Chapin Date: Thu, 16 Jul 2026 10:56:58 -0400 Subject: [PATCH 3/3] fix: add dynamic download URL generation for OpenStudio based on version and SHA --- .github/workflows/docker-openstudio.yml | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/.github/workflows/docker-openstudio.yml b/.github/workflows/docker-openstudio.yml index fec8d78..afcfeb0 100644 --- a/.github/workflows/docker-openstudio.yml +++ b/.github/workflows/docker-openstudio.yml @@ -53,6 +53,7 @@ jobs: openstudio_version: ${{ steps.resolve.outputs.openstudio_version }} openstudio_sha: ${{ steps.resolve.outputs.openstudio_sha }} openstudio_version_ext: ${{ steps.resolve.outputs.openstudio_version_ext }} + openstudio_download_url: ${{ steps.resolve.outputs.openstudio_download_url }} steps: - name: Resolve version id: resolve @@ -72,10 +73,20 @@ jobs: EXT="${{ inputs.openstudio_version_ext }}" fi + if [ -n "${EXT}" ]; then + ESC_VERSION=$(echo "${VERSION}${EXT}" | sed 's/+/%2B/g') + DOWNLOAD_URL="https://openstudio-ci-builds.s3-us-west-2.amazonaws.com/develop/OpenStudio-${ESC_VERSION}%2B${SHA}-Ubuntu-24.04-x86_64.deb" + else + SHA10="${SHA:0:10}" + DOWNLOAD_URL="https://github.com/NatLabRockies/OpenStudio/releases/download/v${VERSION}/OpenStudio-${VERSION}%2B${SHA10}-Ubuntu-24.04-x86_64.deb" + fi + echo "openstudio_version=${VERSION}" >> "$GITHUB_OUTPUT" echo "openstudio_sha=${SHA}" >> "$GITHUB_OUTPUT" echo "openstudio_version_ext=${EXT}" >> "$GITHUB_OUTPUT" + echo "openstudio_download_url=${DOWNLOAD_URL}" >> "$GITHUB_OUTPUT" echo "Resolved: OpenStudio ${VERSION}${EXT} (${SHA})" + echo "Resolved download URL: ${DOWNLOAD_URL}" docker: needs: setup @@ -84,6 +95,7 @@ jobs: OPENSTUDIO_VERSION: ${{ needs.setup.outputs.openstudio_version }} OPENSTUDIO_SHA: ${{ needs.setup.outputs.openstudio_sha }} OPENSTUDIO_VERSION_EXT: ${{ needs.setup.outputs.openstudio_version_ext }} + OPENSTUDIO_DOWNLOAD_URL: ${{ needs.setup.outputs.openstudio_download_url }} steps: - uses: actions/checkout@v4 - uses: actions/setup-python@v5 @@ -98,7 +110,8 @@ jobs: docker build -t openstudio:latest \ --build-arg OPENSTUDIO_VERSION=$OPENSTUDIO_VERSION \ --build-arg OPENSTUDIO_SHA=$OPENSTUDIO_SHA \ - --build-arg OPENSTUDIO_VERSION_EXT=$OPENSTUDIO_VERSION_EXT . + --build-arg OPENSTUDIO_VERSION_EXT=$OPENSTUDIO_VERSION_EXT \ + --build-arg OPENSTUDIO_DOWNLOAD_URL=$OPENSTUDIO_DOWNLOAD_URL . docker run openstudio:latest openstudio openstudio_version docker run openstudio:latest /usr/local/openstudio-$OPENSTUDIO_VERSION/Radiance/bin/rtrace -version docker run -v "$(pwd)":/var/simdata/openstudio openstudio:latest ruby /var/simdata/openstudio/test/test_run.rb