From 02a5a6ec39798d319cca10b4c8b277977ed6800a Mon Sep 17 00:00:00 2001 From: Greg Merritt Date: Mon, 12 Aug 2024 10:45:04 -0700 Subject: [PATCH 01/28] user pool node resize - Deployment Manager check --- vendor/google/ugr/gke/configs/node_pool_ugr01.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vendor/google/ugr/gke/configs/node_pool_ugr01.yaml b/vendor/google/ugr/gke/configs/node_pool_ugr01.yaml index 5979cc1af..f742d5e80 100644 --- a/vendor/google/ugr/gke/configs/node_pool_ugr01.yaml +++ b/vendor/google/ugr/gke/configs/node_pool_ugr01.yaml @@ -11,6 +11,6 @@ resources: dateSuffix: '2024-07-07' initialNodeCount: 1 diskSizeGb: 100 - machineType: n2-standard-2 + machineType: n2-standard-4 minNodeCount: 1 maxNodeCount: 20 From 45bd4de62ae22bb0c99b3a8fdeacec350ab586b3 Mon Sep 17 00:00:00 2001 From: Greg Merritt Date: Mon, 12 Aug 2024 11:05:59 -0700 Subject: [PATCH 02/28] Oops -- not all fields are in-place updatable. Trying w/ min nodes instead. --- vendor/google/ugr/gke/configs/node_pool_ugr01.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/vendor/google/ugr/gke/configs/node_pool_ugr01.yaml b/vendor/google/ugr/gke/configs/node_pool_ugr01.yaml index f742d5e80..4d69373c7 100644 --- a/vendor/google/ugr/gke/configs/node_pool_ugr01.yaml +++ b/vendor/google/ugr/gke/configs/node_pool_ugr01.yaml @@ -11,6 +11,6 @@ resources: dateSuffix: '2024-07-07' initialNodeCount: 1 diskSizeGb: 100 - machineType: n2-standard-4 - minNodeCount: 1 + machineType: n2-standard-2 + minNodeCount: 2 maxNodeCount: 20 From 125999d6f40f8d33b169d890462cdec1a812a200 Mon Sep 17 00:00:00 2001 From: Greg Merritt Date: Mon, 12 Aug 2024 11:10:52 -0700 Subject: [PATCH 03/28] Settings updated, but pool nodes unchanged. Trying both initial++ & min++ --- vendor/google/ugr/gke/configs/node_pool_ugr01.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/vendor/google/ugr/gke/configs/node_pool_ugr01.yaml b/vendor/google/ugr/gke/configs/node_pool_ugr01.yaml index 4d69373c7..fc9619719 100644 --- a/vendor/google/ugr/gke/configs/node_pool_ugr01.yaml +++ b/vendor/google/ugr/gke/configs/node_pool_ugr01.yaml @@ -9,8 +9,8 @@ resources: clusterName: ugresearch-cluster region: us-central1 dateSuffix: '2024-07-07' - initialNodeCount: 1 + initialNodeCount: 2 diskSizeGb: 100 machineType: n2-standard-2 - minNodeCount: 2 + minNodeCount: 3 maxNodeCount: 20 From 68bc0e02980c2402419bb800cfb0373e4c0b35c4 Mon Sep 17 00:00:00 2001 From: Greg Merritt Date: Mon, 12 Aug 2024 11:14:41 -0700 Subject: [PATCH 04/28] Back to defaults. ("initial" was obeyed, but "min++" seems to not cause ++.) --- vendor/google/ugr/gke/configs/node_pool_ugr01.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/vendor/google/ugr/gke/configs/node_pool_ugr01.yaml b/vendor/google/ugr/gke/configs/node_pool_ugr01.yaml index fc9619719..5979cc1af 100644 --- a/vendor/google/ugr/gke/configs/node_pool_ugr01.yaml +++ b/vendor/google/ugr/gke/configs/node_pool_ugr01.yaml @@ -9,8 +9,8 @@ resources: clusterName: ugresearch-cluster region: us-central1 dateSuffix: '2024-07-07' - initialNodeCount: 2 + initialNodeCount: 1 diskSizeGb: 100 machineType: n2-standard-2 - minNodeCount: 3 + minNodeCount: 1 maxNodeCount: 20 From 33ef944b5e219cde861ad82c48f838bbe71a365c Mon Sep 17 00:00:00 2001 From: Greg Merritt Date: Mon, 12 Aug 2024 11:23:51 -0700 Subject: [PATCH 05/28] Deployment update behavior notes added to ugr vendor gke README.md --- vendor/google/ugr/README.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/vendor/google/ugr/README.md b/vendor/google/ugr/README.md index 4ca1367d6..30a2b61e0 100644 --- a/vendor/google/ugr/README.md +++ b/vendor/google/ugr/README.md @@ -85,4 +85,6 @@ Run the shell script to deploy: ## Change a deployment -To change an existing deployment, edit the parameters to be changed in the deployment's yaml config and run its associated shell script. \ No newline at end of file +To change an existing deployment, edit the parameters to be changed in the deployment's yaml config and run its associated shell script. + +Note that not all parameters can be updated in place. For example, node pool autoscaling (such as min/max numbers and on/off) can be updated on the "hot" deployment, but other config settiongs (e.g., machine type and disk size) require the resources to first be undeployed, then deployed anew with the new configuration. From 4d45689aac8d04aea0d4d2a4eed20139281cffd0 Mon Sep 17 00:00:00 2001 From: Greg Merritt Date: Mon, 12 Aug 2024 11:25:10 -0700 Subject: [PATCH 06/28] README.md typo fixed --- vendor/google/ugr/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vendor/google/ugr/README.md b/vendor/google/ugr/README.md index 30a2b61e0..7d1667975 100644 --- a/vendor/google/ugr/README.md +++ b/vendor/google/ugr/README.md @@ -87,4 +87,4 @@ Run the shell script to deploy: To change an existing deployment, edit the parameters to be changed in the deployment's yaml config and run its associated shell script. -Note that not all parameters can be updated in place. For example, node pool autoscaling (such as min/max numbers and on/off) can be updated on the "hot" deployment, but other config settiongs (e.g., machine type and disk size) require the resources to first be undeployed, then deployed anew with the new configuration. +Note that not all parameters can be updated in place. For example, node pool autoscaling (such as min/max numbers and on/off) can be updated on the "hot" deployment, but other config settings (e.g., machine type and disk size) require the resources to first be undeployed, then deployed anew with the new configuration. From bb8532dce164b83bd76d49a4449aa7a3cd188f1c Mon Sep 17 00:00:00 2001 From: shane knapp Date: Tue, 13 Aug 2024 10:52:36 -0700 Subject: [PATCH 07/28] preparing for more hubploy testing --- deployments/logodev/hubploy.yaml | 5 +- deployments/logodev/image/apt.txt | 93 ------------------- deployments/logodev/image/environment.yml | 65 ------------- .../logodev/image/infra-requirements.txt | 29 ------ deployments/logodev/image/postBuild | 6 -- 5 files changed, 1 insertion(+), 197 deletions(-) delete mode 100644 deployments/logodev/image/apt.txt delete mode 100644 deployments/logodev/image/environment.yml delete mode 100644 deployments/logodev/image/infra-requirements.txt delete mode 100644 deployments/logodev/image/postBuild diff --git a/deployments/logodev/hubploy.yaml b/deployments/logodev/hubploy.yaml index 7760f94a1..36e817577 100644 --- a/deployments/logodev/hubploy.yaml +++ b/deployments/logodev/hubploy.yaml @@ -1,10 +1,7 @@ images: images: # temporary update - - name: us-central1-docker.pkg.dev/ucb-datahub-2018/user-images/logodev-user-image:a02e39fbaedb - path: image/ - repo2docker: - base_image: docker.io/library/buildpack-deps:jammy + - name: us-central1-docker.pkg.dev/ucb-datahub-2018/user-images/logodev-user-image:829f9eaececd registry: provider: gcloud gcloud: diff --git a/deployments/logodev/image/apt.txt b/deployments/logodev/image/apt.txt deleted file mode 100644 index a6c4589ed..000000000 --- a/deployments/logodev/image/apt.txt +++ /dev/null @@ -1,93 +0,0 @@ -# Some linux packages for basic terminal work, particularly -# oriented at users new to Unix/cmd line environments. - -# installing less as more just isn't enough -less - -# Basic unix tools -man -man-db -manpages-posix -manpages-dev -manpages-posix-dev - -# Download tools -curl -wget - -# Core text editors on a *nix box: vim -vim - -# A couple of CLI editors that are easier than vim -# micro # currently not working on 18.04 -nano -jed -jed-extra - -# powerful terminal-based file manager, better than the one in JLab -mc - -# for easily managing multiple repositories with one command (perl-doc -# is needed for its help pages to work) -mr -perl-doc - -# Regular build tools for compiling common stuff -build-essential -gfortran - -# Dependencies for nbconvert -texlive-xetex -texlive-fonts-recommended -texlive-plain-generic -# https://github.com/berkeley-dsep-infra/datahub/issues/3719 -texlive-lang-chinese -lmodern - -# Other useful document-related tools -pandoc -latexdiff - -# Some useful git utilities use basic Ruby -ruby - -# Other niceties for command-line work and life -ack # powerful grep-like tool -pydf # colorized disk usage -tmux -screen -htop -nnn # cmd line file manager -zsh -rsync -tig # console UI for git -multitail - -# For later, these are not available in 18.04 -#browsh # text-based web browser, occasionally handy -#dasel # json/yml/csv/etc data wrangling at the terminal -#fzf # fuzzy file finder - -## This section adds tools for desktop environment usage -dbus-x11 -xorg -xubuntu-icon-theme -xfce4 -xfce4-goodies -xclip -xsel -firefox -chromium-browser - -# GUI text editors -vim-gtk3 -gedit - -# Git clients and tools -git-gui -gitg -qgit -meld - -# For jupyter-tree-download. Ref: https://github.com/berkeley-dsep-infra/datahub/issues/3979 -zip diff --git a/deployments/logodev/image/environment.yml b/deployments/logodev/image/environment.yml deleted file mode 100644 index 386806bea..000000000 --- a/deployments/logodev/image/environment.yml +++ /dev/null @@ -1,65 +0,0 @@ -name: data100-FA23 - -channels: -- conda-forge -- pytorch - -dependencies: -- python==3.11.* -- git==2.39.1 -- jupyter-resource-usage==1.0.0 -- jupyterlab==4.0.11 -- jupyterlab-favorites==3.0.0 -- jupyterlab_server==2.23.0 -- jupyterlab_widgets==3.0.8 -- jupyter_server==2.7.0 -- nbgitpuller==1.2.1 -- notebook==7.0.7 -- folium==0.14.0 -- h5netcdf==1.0.2 -- ipywidgets==8.0.7 -- jupysql==0.8.0 -- jupyter-archive==3.4.0 -- matplotlib==3.7.1 -- mdit-py-plugins==0.4.0 -- numpy==1.24.2 -- pandas==2.2.2 -- plotly==5.13.1 -- requests==2.28.2 -- scikit-image==0.19.3 -- scikit-learn==1.2.2 -- scipy==1.10.1 -- seaborn==0.12.2 -- statsmodels==0.14.0 -- tensorflow-cpu==2.12.1 -- sqlalchemy==2.0.16 -- mlxtend==0.23.0 -# Spring 2024 data 100 -- pytorch==2.1.2 -- cpuonly==2.0 -- transformers==4.37.1 -# Spring 2024 table demos -- lxml==5.1.0 -# Spring 2024 Econ 148 Packages -- geopandas==0.14.2 -- geopy==2.4.1 -- lifelines==0.27.8 -- pycountry==22.3.5 -- pip -- pip: - # - -r infra-requirements.txt - - ipywidgets==8.0.7 - # disable until fixed (probably this: https://github.com/jupyterlab/jupyter-collaboration/issues/162) - # - jupyter_collaboration==1.0.1 - - jupyterhub==4.1.5 - - nbconvert[webpdf] - # - pyppeteer==2.0.0 - - pytest-notebook==0.8.1 - - gh-scoped-creds==4.1 - - git+https://github.com/shaneknapp/python-popularity-contest.git@add-error-handling - - ydata-profiling==4.6.4 - - otter-grader==5.4.0 - - duckdb==0.10.1 - - duckdb_engine==0.11.2 - # pulled in by ottr, if not pinned to 1.16.2, 1.16.3 causes DH-323 - - jupytext==1.16.2 diff --git a/deployments/logodev/image/infra-requirements.txt b/deployments/logodev/image/infra-requirements.txt deleted file mode 100644 index b01c9d80d..000000000 --- a/deployments/logodev/image/infra-requirements.txt +++ /dev/null @@ -1,29 +0,0 @@ -# WARNING: Original source at scripts/infra-packages/requirements.txt -# PLEASE DO NOT EDIT ELSEWHERE -# After editing scripts/infra-packages/requirements.txt, please run -# scripts/infra-packages/sync.bash. - -# This file pins versions of notebook related python packages we want -# across all hubs. This makes sure we don't need to upgrade them -# everwhere one by one. - -# FIXME: Freeze this to get exact versions of all dependencies -notebook==7.0.7 -jupyterlab==4.0.11 -nbgitpuller==1.2.1 -jupyter-resource-usage==1.0.1 -# Matches version in images/hub/Dockerfile -jupyterhub==4.1.5 -appmode==0.8.0 -ipywidgets==8.0.7 -jupyter-tree-download==1.0.1 -git-credential-helpers==0.2 -# Measure popularity of different packages in our hubs -# https://discourse.jupyter.org/t/request-for-implementation-instrument-libraries-actively-used-by-users-on-a-jupyterhub/7994?u=yuvipanda -git+https://github.com/shaneknapp/python-popularity-contest.git@add-error-handling -# RISE is useful for presentations - see https://github.com/berkeley-dsep-infra/datahub/issues/2527 -RISE==5.7.1 -# syncthing for dropbox-like functionality -jupyter-syncthing-proxy==1.0.3 -# jupyter archival tool for easy user downloads -jupyter-archive==3.4.0 diff --git a/deployments/logodev/image/postBuild b/deployments/logodev/image/postBuild deleted file mode 100644 index 9514de431..000000000 --- a/deployments/logodev/image/postBuild +++ /dev/null @@ -1,6 +0,0 @@ -#!/usr/bin/env bash - -# installing chromium browser to enable webpdf conversion using nbconvert -export PLAYWRIGHT_BROWSERS_PATH=${CONDA_DIR} -npm install -g playwright -playwright install chromium From 5baf2e523ecf03a062f25ca2f13fe7b6bc54138d Mon Sep 17 00:00:00 2001 From: shane knapp Date: Thu, 15 Aug 2024 10:13:03 -0700 Subject: [PATCH 08/28] adding hubploy testing --- .github/workflows/deploy-to-staging.yaml | 37 ++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 .github/workflows/deploy-to-staging.yaml diff --git a/.github/workflows/deploy-to-staging.yaml b/.github/workflows/deploy-to-staging.yaml new file mode 100644 index 000000000..d6e750723 --- /dev/null +++ b/.github/workflows/deploy-to-staging.yaml @@ -0,0 +1,37 @@ +name: Deploy images to hubs + +on: + push: + branches: + - staging + +jobs: + deploy: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Setup python + uses: actions/setup-python@v5 + with: + python-version: '3.11' + + - name: Check out the image repo + uses: actions/checkout@v4 + with: + fetch-depth: 0 # OR "2" -> To retrieve the preceding commit. + + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install -r requirements.txt + pip install --force-reinstall git+https://github.com/shaneknapp/hubploy.git@major-refactor + + - name: Get changed files + id: changed-files + uses: tj-actions/changed-files@v44 + with: + files_ignore: | + .github/** + images/** \ No newline at end of file From 2339589dcdbe46d17bc25e3a596596fd2a86d93f Mon Sep 17 00:00:00 2001 From: shane knapp Date: Fri, 16 Aug 2024 09:50:16 -0700 Subject: [PATCH 09/28] placeholder commit --- .github/workflows/deploy-to-staging.yaml | 30 +++++++++++++++++------- 1 file changed, 22 insertions(+), 8 deletions(-) diff --git a/.github/workflows/deploy-to-staging.yaml b/.github/workflows/deploy-to-staging.yaml index d6e750723..c041d210d 100644 --- a/.github/workflows/deploy-to-staging.yaml +++ b/.github/workflows/deploy-to-staging.yaml @@ -1,5 +1,5 @@ -name: Deploy images to hubs - +name: Deploy images to staging hubs +# use echo ${VAR##*: } to get the value of a variable that is a string with a colon in it on: push: branches: @@ -9,6 +9,12 @@ jobs: deploy: runs-on: ubuntu-latest steps: + - name: Get PR labels + id: pr-labels + uses: irby/get-labels-on-push@v1.0.1 + with: + github-token: ${{ secrets.GITHUB_TOKEN }} + - name: Checkout uses: actions/checkout@v4 @@ -28,10 +34,18 @@ jobs: pip install -r requirements.txt pip install --force-reinstall git+https://github.com/shaneknapp/hubploy.git@major-refactor - - name: Get changed files - id: changed-files - uses: tj-actions/changed-files@v44 + - name: Install Google Cloud SDK + uses: google-github-actions/setup-gcloud@v0.2.0 with: - files_ignore: | - .github/** - images/** \ No newline at end of file + project_id: ${{ secrets.GCP_PROJECT_ID }} + service_account_key: ${{ secrets.GCP_SA_KEY }} + export_default_credentials: true + + - name: Install SOPS + run: | + echo $SOPS_ACCOUNT_KEY > ${HOME}/repo/sops.key + echo 'export GOOGLE_APPLICATION_CREDENTIALS=${HOME}/repo/sops.key' >> ${BASH_ENV} + mkdir -p ${HOME}/repo/bin + curl -sSL https://github.com/mozilla/sops/releases/download/v3.7.0/sops-v3.7.0.linux -o ${HOME}/repo/bin/sops + chmod 755 ${HOME}/repo/bin/sops + echo 'export PATH="${HOME}/repo/bin:${PATH}"' >> ${BASH_ENV} \ No newline at end of file From e361daf40aad74889888315bcec01638ea083ffd Mon Sep 17 00:00:00 2001 From: shane knapp Date: Fri, 16 Aug 2024 11:27:58 -0700 Subject: [PATCH 10/28] add github workflow for linting yaml --- .github/workflows/yaml-lint.yaml | 14 ++++++++++++++ requirements.txt | 1 + 2 files changed, 15 insertions(+) create mode 100644 .github/workflows/yaml-lint.yaml diff --git a/.github/workflows/yaml-lint.yaml b/.github/workflows/yaml-lint.yaml new file mode 100644 index 000000000..d38c990a5 --- /dev/null +++ b/.github/workflows/yaml-lint.yaml @@ -0,0 +1,14 @@ +--- +on: pull-request # yamllint disable-line rule:truthy + +jobs: + lint: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - name: Install yamllint + run: pip install yamllint==1.35.1 + + - name: Lint YAML files + run: yamllint --no-warnings . diff --git a/requirements.txt b/requirements.txt index da3a1ba42..4eacc64bd 100644 --- a/requirements.txt +++ b/requirements.txt @@ -10,3 +10,4 @@ chardet requests==2.31.0 # requests==2.32.3 urllib3<2.0.0 +yamllint==1.35.1 From 2dc547189098c002794161ef7659c8661b01fc2c Mon Sep 17 00:00:00 2001 From: shane knapp Date: Fri, 16 Aug 2024 11:34:05 -0700 Subject: [PATCH 11/28] minor tweaks --- .github/workflows/yaml-lint.yaml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/yaml-lint.yaml b/.github/workflows/yaml-lint.yaml index d38c990a5..b5feb3464 100644 --- a/.github/workflows/yaml-lint.yaml +++ b/.github/workflows/yaml-lint.yaml @@ -1,5 +1,6 @@ ---- -on: pull-request # yamllint disable-line rule:truthy +name: "Yaml lint" +on: + - pull-request # yamllint disable-line rule:truthy jobs: lint: From 9879146e0d5e0de974bfd18e9b3371a41d9f0402 Mon Sep 17 00:00:00 2001 From: shane knapp Date: Fri, 16 Aug 2024 11:35:58 -0700 Subject: [PATCH 12/28] testing yamllint --- chartpress.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/chartpress.yaml b/chartpress.yaml index eaaacc141..4b8049529 100644 --- a/chartpress.yaml +++ b/chartpress.yaml @@ -1,3 +1,4 @@ +asdfasdf charts: - name: hub imagePrefix: gcr.io/ucb-datahub-2018/jupyterhub- From 1981cd3f750f0166c8313018568fc35741c5081e Mon Sep 17 00:00:00 2001 From: shane knapp Date: Fri, 16 Aug 2024 11:40:14 -0700 Subject: [PATCH 13/28] fixing event name --- .github/workflows/yaml-lint.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/yaml-lint.yaml b/.github/workflows/yaml-lint.yaml index b5feb3464..787d5e3fa 100644 --- a/.github/workflows/yaml-lint.yaml +++ b/.github/workflows/yaml-lint.yaml @@ -1,6 +1,6 @@ name: "Yaml lint" on: - - pull-request # yamllint disable-line rule:truthy + - pull_request # yamllint disable-line rule:truthy jobs: lint: From 217263f067dfc8eca9f2f6f275c8865c6b29c615 Mon Sep 17 00:00:00 2001 From: shane knapp Date: Fri, 16 Aug 2024 11:41:24 -0700 Subject: [PATCH 14/28] fixing chartpress.yaml --- chartpress.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/chartpress.yaml b/chartpress.yaml index 4b8049529..eaaacc141 100644 --- a/chartpress.yaml +++ b/chartpress.yaml @@ -1,4 +1,3 @@ -asdfasdf charts: - name: hub imagePrefix: gcr.io/ucb-datahub-2018/jupyterhub- From b84d3707b00b0ae6122fa606ebddbd35843741c8 Mon Sep 17 00:00:00 2001 From: shane knapp Date: Mon, 19 Aug 2024 10:28:27 -0700 Subject: [PATCH 15/28] initial commit to test gcloud github actions --- .github/workflows/deploy-to-staging.yaml | 22 +++++++++++++++------- deployments/logodev/hubploy.yaml | 5 ----- 2 files changed, 15 insertions(+), 12 deletions(-) diff --git a/.github/workflows/deploy-to-staging.yaml b/.github/workflows/deploy-to-staging.yaml index c041d210d..275cfcc46 100644 --- a/.github/workflows/deploy-to-staging.yaml +++ b/.github/workflows/deploy-to-staging.yaml @@ -1,6 +1,7 @@ name: Deploy images to staging hubs # use echo ${VAR##*: } to get the value of a variable that is a string with a colon in it on: + workflow_dispatch: push: branches: - staging @@ -28,24 +29,31 @@ jobs: with: fetch-depth: 0 # OR "2" -> To retrieve the preceding commit. + - name: print out labels just for testing + run: echo "${{ steps.pr-labels.outputs.labels }}" + - name: Install dependencies run: | python -m pip install --upgrade pip pip install -r requirements.txt pip install --force-reinstall git+https://github.com/shaneknapp/hubploy.git@major-refactor + hubploy --help + hubploy deploy --help - - name: Install Google Cloud SDK - uses: google-github-actions/setup-gcloud@v0.2.0 + - name: Auth to gcloud + uses: google-github-actions/auth@v2 with: + credentials_json: ${{ secrets.GCP_SA_KEY }} project_id: ${{ secrets.GCP_PROJECT_ID }} - service_account_key: ${{ secrets.GCP_SA_KEY }} - export_default_credentials: true + + - name: Install Google Cloud SDK + uses: google-github-actions/setup-gcloud@v2 + + - name: gcloud info + run: gcloud info - name: Install SOPS run: | - echo $SOPS_ACCOUNT_KEY > ${HOME}/repo/sops.key - echo 'export GOOGLE_APPLICATION_CREDENTIALS=${HOME}/repo/sops.key' >> ${BASH_ENV} mkdir -p ${HOME}/repo/bin curl -sSL https://github.com/mozilla/sops/releases/download/v3.7.0/sops-v3.7.0.linux -o ${HOME}/repo/bin/sops chmod 755 ${HOME}/repo/bin/sops - echo 'export PATH="${HOME}/repo/bin:${PATH}"' >> ${BASH_ENV} \ No newline at end of file diff --git a/deployments/logodev/hubploy.yaml b/deployments/logodev/hubploy.yaml index 36e817577..fd2b36d2a 100644 --- a/deployments/logodev/hubploy.yaml +++ b/deployments/logodev/hubploy.yaml @@ -2,11 +2,6 @@ images: images: # temporary update - name: us-central1-docker.pkg.dev/ucb-datahub-2018/user-images/logodev-user-image:829f9eaececd - registry: - provider: gcloud - gcloud: - project: ucb-datahub-2018 - service_key: gcr-key.json cluster: provider: gcloud From c8103463e858f8198a6f81cb6e4a83eb9db1c8d4 Mon Sep 17 00:00:00 2001 From: shane knapp Date: Mon, 19 Aug 2024 10:32:40 -0700 Subject: [PATCH 16/28] why is there a conflict --- deployments/logodev/image/apt.txt | 93 +++++++++++++++++++ deployments/logodev/image/environment.yml | 65 +++++++++++++ .../logodev/image/infra-requirements.txt | 29 ++++++ deployments/logodev/image/postBuild | 6 ++ 4 files changed, 193 insertions(+) create mode 100644 deployments/logodev/image/apt.txt create mode 100644 deployments/logodev/image/environment.yml create mode 100644 deployments/logodev/image/infra-requirements.txt create mode 100644 deployments/logodev/image/postBuild diff --git a/deployments/logodev/image/apt.txt b/deployments/logodev/image/apt.txt new file mode 100644 index 000000000..a6c4589ed --- /dev/null +++ b/deployments/logodev/image/apt.txt @@ -0,0 +1,93 @@ +# Some linux packages for basic terminal work, particularly +# oriented at users new to Unix/cmd line environments. + +# installing less as more just isn't enough +less + +# Basic unix tools +man +man-db +manpages-posix +manpages-dev +manpages-posix-dev + +# Download tools +curl +wget + +# Core text editors on a *nix box: vim +vim + +# A couple of CLI editors that are easier than vim +# micro # currently not working on 18.04 +nano +jed +jed-extra + +# powerful terminal-based file manager, better than the one in JLab +mc + +# for easily managing multiple repositories with one command (perl-doc +# is needed for its help pages to work) +mr +perl-doc + +# Regular build tools for compiling common stuff +build-essential +gfortran + +# Dependencies for nbconvert +texlive-xetex +texlive-fonts-recommended +texlive-plain-generic +# https://github.com/berkeley-dsep-infra/datahub/issues/3719 +texlive-lang-chinese +lmodern + +# Other useful document-related tools +pandoc +latexdiff + +# Some useful git utilities use basic Ruby +ruby + +# Other niceties for command-line work and life +ack # powerful grep-like tool +pydf # colorized disk usage +tmux +screen +htop +nnn # cmd line file manager +zsh +rsync +tig # console UI for git +multitail + +# For later, these are not available in 18.04 +#browsh # text-based web browser, occasionally handy +#dasel # json/yml/csv/etc data wrangling at the terminal +#fzf # fuzzy file finder + +## This section adds tools for desktop environment usage +dbus-x11 +xorg +xubuntu-icon-theme +xfce4 +xfce4-goodies +xclip +xsel +firefox +chromium-browser + +# GUI text editors +vim-gtk3 +gedit + +# Git clients and tools +git-gui +gitg +qgit +meld + +# For jupyter-tree-download. Ref: https://github.com/berkeley-dsep-infra/datahub/issues/3979 +zip diff --git a/deployments/logodev/image/environment.yml b/deployments/logodev/image/environment.yml new file mode 100644 index 000000000..c4de2ee40 --- /dev/null +++ b/deployments/logodev/image/environment.yml @@ -0,0 +1,65 @@ +name: data100-FA23 + +channels: +- conda-forge +- pytorch + +dependencies: +- python==3.11.* +- git==2.39.1 +- jupyter-resource-usage==1.0.0 +- jupyterlab==4.0.11 +- jupyterlab-favorites==3.0.0 +- jupyterlab_server==2.23.0 +- jupyterlab_widgets==3.0.8 +- jupyter_server==2.7.0 +- nbgitpuller==1.2.1 +- notebook==7.0.7 +- folium==0.14.0 +- h5netcdf==1.0.2 +- ipywidgets==8.0.7 +- jupysql==0.8.0 +- jupyter-archive==3.4.0 +- matplotlib==3.7.1 +- mdit-py-plugins==0.4.0 +- numpy==1.24.2 +- pandas==2.2.2 +- plotly==5.13.1 +- requests==2.28.2 +- scikit-image==0.19.3 +- scikit-learn==1.2.2 +- scipy==1.10.1 +- seaborn==0.12.2 +- statsmodels==0.14.0 +- tensorflow-cpu==2.12.1 +- sqlalchemy==2.0.16 +- mlxtend==0.23.0 +# Spring 2024 data 100 +- pytorch==2.1.2 +- cpuonly==2.0 +- transformers==4.37.1 +# Spring 2024 table demos +- lxml==5.1.0 +# Spring 2024 Econ 148 Packages +- geopandas==0.14.2 +- geopy==2.4.1 +- lifelines==0.27.8 +- pycountry==22.3.5 +- pip +- pip: + # - -r infra-requirements.txt + - ipywidgets==8.0.7 + # disable until fixed (probably this: https://github.com/jupyterlab/jupyter-collaboration/issues/162) + # - jupyter_collaboration==1.0.1 + - jupyterhub==4.1.6 + - nbconvert[webpdf] + # - pyppeteer==2.0.0 + - pytest-notebook==0.8.1 + - gh-scoped-creds==4.1 + - git+https://github.com/shaneknapp/python-popularity-contest.git@add-error-handling + - ydata-profiling==4.6.4 + - otter-grader==5.4.0 + - duckdb==0.10.1 + - duckdb_engine==0.11.2 + # pulled in by ottr, if not pinned to 1.16.2, 1.16.3 causes DH-323 + - jupytext==1.16.2 diff --git a/deployments/logodev/image/infra-requirements.txt b/deployments/logodev/image/infra-requirements.txt new file mode 100644 index 000000000..0fb0bd930 --- /dev/null +++ b/deployments/logodev/image/infra-requirements.txt @@ -0,0 +1,29 @@ +# WARNING: Original source at scripts/infra-packages/requirements.txt +# PLEASE DO NOT EDIT ELSEWHERE +# After editing scripts/infra-packages/requirements.txt, please run +# scripts/infra-packages/sync.bash. + +# This file pins versions of notebook related python packages we want +# across all hubs. This makes sure we don't need to upgrade them +# everwhere one by one. + +# FIXME: Freeze this to get exact versions of all dependencies +notebook==7.0.7 +jupyterlab==4.0.11 +nbgitpuller==1.2.1 +jupyter-resource-usage==1.0.1 +# Matches version in images/hub/Dockerfile +jupyterhub==4.1.6 +appmode==0.8.0 +ipywidgets==8.0.7 +jupyter-tree-download==1.0.1 +git-credential-helpers==0.2 +# Measure popularity of different packages in our hubs +# https://discourse.jupyter.org/t/request-for-implementation-instrument-libraries-actively-used-by-users-on-a-jupyterhub/7994?u=yuvipanda +git+https://github.com/shaneknapp/python-popularity-contest.git@add-error-handling +# RISE is useful for presentations - see https://github.com/berkeley-dsep-infra/datahub/issues/2527 +RISE==5.7.1 +# syncthing for dropbox-like functionality +jupyter-syncthing-proxy==1.0.3 +# jupyter archival tool for easy user downloads +jupyter-archive==3.4.0 diff --git a/deployments/logodev/image/postBuild b/deployments/logodev/image/postBuild new file mode 100644 index 000000000..9514de431 --- /dev/null +++ b/deployments/logodev/image/postBuild @@ -0,0 +1,6 @@ +#!/usr/bin/env bash + +# installing chromium browser to enable webpdf conversion using nbconvert +export PLAYWRIGHT_BROWSERS_PATH=${CONDA_DIR} +npm install -g playwright +playwright install chromium From 763f4ef0a33e381031db41d96f7c35682cf5d946 Mon Sep 17 00:00:00 2001 From: shane knapp Date: Mon, 19 Aug 2024 10:40:58 -0700 Subject: [PATCH 17/28] whoopsie --- .github/workflows/deploy-to-staging.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy-to-staging.yaml b/.github/workflows/deploy-to-staging.yaml index 275cfcc46..5bbe82a64 100644 --- a/.github/workflows/deploy-to-staging.yaml +++ b/.github/workflows/deploy-to-staging.yaml @@ -43,7 +43,7 @@ jobs: - name: Auth to gcloud uses: google-github-actions/auth@v2 with: - credentials_json: ${{ secrets.GCP_SA_KEY }} + credentials_json: ${{ secrets.GKE_KEY }} project_id: ${{ secrets.GCP_PROJECT_ID }} - name: Install Google Cloud SDK From 7e9f239dafc0f35f53e76a119275465249eb5ed8 Mon Sep 17 00:00:00 2001 From: shane knapp Date: Mon, 19 Aug 2024 11:47:02 -0700 Subject: [PATCH 18/28] testing hubploy --- .github/workflows/deploy-to-staging.yaml | 55 +++++++++++++++++------- deployments/logodev/hubploy.yaml | 2 +- 2 files changed, 41 insertions(+), 16 deletions(-) diff --git a/.github/workflows/deploy-to-staging.yaml b/.github/workflows/deploy-to-staging.yaml index 5bbe82a64..34a616f9d 100644 --- a/.github/workflows/deploy-to-staging.yaml +++ b/.github/workflows/deploy-to-staging.yaml @@ -16,44 +16,69 @@ jobs: with: github-token: ${{ secrets.GITHUB_TOKEN }} - - name: Checkout - uses: actions/checkout@v4 - - - name: Setup python - uses: actions/setup-python@v5 - with: - python-version: '3.11' - - name: Check out the image repo uses: actions/checkout@v4 with: fetch-depth: 0 # OR "2" -> To retrieve the preceding commit. - - name: print out labels just for testing - run: echo "${{ steps.pr-labels.outputs.labels }}" + - name: Pull out any hubs that need deploying from the labels on the merge commit to staging + run: | + echo "PR labels: ${{ steps.pr-labels.outputs.labels }}" + HUBS=() + for label in $(echo -e "${{ steps.pr-labels.outputs.labels }}"); do + if [[ "$label" == hub-* ]]; then + label=$(echo $label | awk -F'-' '{print $2}') + HUBS+="$label" + echo "DEPLOY=1" >> $GITHUB_ENV + fi + done + echo "Hubs to deploy: $HUBS" + echo "DEPLOY_HUBS=${HUBS[@]}" >> $GITHUB_ENV + + - name: Setup python + if: ${{ env.DEPLOY }} + uses: actions/setup-python@v5 + with: + python-version: '3.11' - name: Install dependencies + if: ${{ env.DEPLOY }} run: | python -m pip install --upgrade pip pip install -r requirements.txt pip install --force-reinstall git+https://github.com/shaneknapp/hubploy.git@major-refactor - hubploy --help - hubploy deploy --help - name: Auth to gcloud + if: ${{ env.DEPLOY }} uses: google-github-actions/auth@v2 with: credentials_json: ${{ secrets.GKE_KEY }} project_id: ${{ secrets.GCP_PROJECT_ID }} - name: Install Google Cloud SDK + if: ${{ env.DEPLOY }} uses: google-github-actions/setup-gcloud@v2 - - name: gcloud info - run: gcloud info - - name: Install SOPS + if: ${{ env.DEPLOY }} run: | mkdir -p ${HOME}/repo/bin curl -sSL https://github.com/mozilla/sops/releases/download/v3.7.0/sops-v3.7.0.linux -o ${HOME}/repo/bin/sops chmod 755 ${HOME}/repo/bin/sops + echo "${HOME}/repo/bin" >> $GITHUB_PATH + + - name: Install Helm + if: ${{ env.DEPLOY }} + run: | + curl -L https://get.helm.sh/helm-v3.13.3-linux-amd64.tar.gz | tar -xzf - + mv linux-amd64/helm /usr/local/bin + helm repo add jupyterhub https://jupyterhub.github.io/helm-chart/ + helm repo update + + - name: Deploy hubs to staging + if: ${{ env.DEPLOY }} + run: | + for hub in $DEPLOY_HUBS[@]; do + echo "Deploying $hub to staging" + hubploy --verbose deploy $hub hub staging + done diff --git a/deployments/logodev/hubploy.yaml b/deployments/logodev/hubploy.yaml index fd2b36d2a..f6a83f0fd 100644 --- a/deployments/logodev/hubploy.yaml +++ b/deployments/logodev/hubploy.yaml @@ -1,7 +1,7 @@ images: images: # temporary update - - name: us-central1-docker.pkg.dev/ucb-datahub-2018/user-images/logodev-user-image:829f9eaececd + - name: us-central1-docker.pkg.dev/ucb-datahub-2018/user-images/logodev-user-image:a9443779a3a9 cluster: provider: gcloud From ea0b0b24c5a9e7e025bd66e9e8f3c8c9cbb0b3ce Mon Sep 17 00:00:00 2001 From: shane Date: Mon, 19 Aug 2024 11:52:10 -0700 Subject: [PATCH 19/28] Update deploy-to-staging.yaml --- .github/workflows/deploy-to-staging.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy-to-staging.yaml b/.github/workflows/deploy-to-staging.yaml index 34a616f9d..f5f373eca 100644 --- a/.github/workflows/deploy-to-staging.yaml +++ b/.github/workflows/deploy-to-staging.yaml @@ -78,7 +78,7 @@ jobs: - name: Deploy hubs to staging if: ${{ env.DEPLOY }} run: | - for hub in $DEPLOY_HUBS[@]; do + for hub in $(echo -e "${{ env.DEPLOY_HUBS }}"); do echo "Deploying $hub to staging" hubploy --verbose deploy $hub hub staging done From df686dbeb67f42f8710d03a533c838285387956a Mon Sep 17 00:00:00 2001 From: shane knapp Date: Mon, 19 Aug 2024 11:54:39 -0700 Subject: [PATCH 20/28] hopefully the final test --- deployments/logodev/hubploy.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/deployments/logodev/hubploy.yaml b/deployments/logodev/hubploy.yaml index f6a83f0fd..28ea5c8da 100644 --- a/deployments/logodev/hubploy.yaml +++ b/deployments/logodev/hubploy.yaml @@ -1,7 +1,7 @@ images: images: # temporary update - - name: us-central1-docker.pkg.dev/ucb-datahub-2018/user-images/logodev-user-image:a9443779a3a9 + - name: us-central1-docker.pkg.dev/ucb-datahub-2018/user-images/logodev-user-image:71e05556317f cluster: provider: gcloud From 2ff3b377c78d4554aee6fbc96b4ae4f5985e55f2 Mon Sep 17 00:00:00 2001 From: shane knapp Date: Mon, 19 Aug 2024 12:14:09 -0700 Subject: [PATCH 21/28] set env var for sops to use for auth --- .github/workflows/deploy-to-staging.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/deploy-to-staging.yaml b/.github/workflows/deploy-to-staging.yaml index f5f373eca..a31c36d03 100644 --- a/.github/workflows/deploy-to-staging.yaml +++ b/.github/workflows/deploy-to-staging.yaml @@ -78,6 +78,7 @@ jobs: - name: Deploy hubs to staging if: ${{ env.DEPLOY }} run: | + GOOGLE_APPLICATION_CREDENTIALS=${{ secrets.GKE_KEY }} for hub in $(echo -e "${{ env.DEPLOY_HUBS }}"); do echo "Deploying $hub to staging" hubploy --verbose deploy $hub hub staging From 14ac6e24f0af139aae8a84b28aa2ef2cbf231288 Mon Sep 17 00:00:00 2001 From: shane knapp Date: Mon, 19 Aug 2024 13:00:50 -0700 Subject: [PATCH 22/28] update variable name to match secret in github repo --- .github/workflows/deploy-to-staging.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy-to-staging.yaml b/.github/workflows/deploy-to-staging.yaml index a31c36d03..d3726026a 100644 --- a/.github/workflows/deploy-to-staging.yaml +++ b/.github/workflows/deploy-to-staging.yaml @@ -78,7 +78,7 @@ jobs: - name: Deploy hubs to staging if: ${{ env.DEPLOY }} run: | - GOOGLE_APPLICATION_CREDENTIALS=${{ secrets.GKE_KEY }} + GOOGLE_APPLICATION_CREDENTIALS=${{ secrets.SOPS_KEY }} for hub in $(echo -e "${{ env.DEPLOY_HUBS }}"); do echo "Deploying $hub to staging" hubploy --verbose deploy $hub hub staging From f5959277709451bd0da0385dda2174b22f55c36a Mon Sep 17 00:00:00 2001 From: shane knapp Date: Mon, 19 Aug 2024 13:02:24 -0700 Subject: [PATCH 23/28] trigger a deployment to staging --- deployments/logodev/hubploy.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/deployments/logodev/hubploy.yaml b/deployments/logodev/hubploy.yaml index 28ea5c8da..f6a83f0fd 100644 --- a/deployments/logodev/hubploy.yaml +++ b/deployments/logodev/hubploy.yaml @@ -1,7 +1,7 @@ images: images: # temporary update - - name: us-central1-docker.pkg.dev/ucb-datahub-2018/user-images/logodev-user-image:71e05556317f + - name: us-central1-docker.pkg.dev/ucb-datahub-2018/user-images/logodev-user-image:a9443779a3a9 cluster: provider: gcloud From 8b1addc55fd3b0d7a7da25ae9946412be6dcd4a8 Mon Sep 17 00:00:00 2001 From: shane knapp Date: Mon, 19 Aug 2024 13:14:20 -0700 Subject: [PATCH 24/28] remove repo from paths etc --- .github/workflows/deploy-to-staging.yaml | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/.github/workflows/deploy-to-staging.yaml b/.github/workflows/deploy-to-staging.yaml index d3726026a..b2ef46eab 100644 --- a/.github/workflows/deploy-to-staging.yaml +++ b/.github/workflows/deploy-to-staging.yaml @@ -62,10 +62,10 @@ jobs: - name: Install SOPS if: ${{ env.DEPLOY }} run: | - mkdir -p ${HOME}/repo/bin - curl -sSL https://github.com/mozilla/sops/releases/download/v3.7.0/sops-v3.7.0.linux -o ${HOME}/repo/bin/sops - chmod 755 ${HOME}/repo/bin/sops - echo "${HOME}/repo/bin" >> $GITHUB_PATH + mkdir -p ${HOME}/bin + curl -sSL https://github.com/mozilla/sops/releases/download/v3.7.0/sops-v3.7.0.linux -o ${HOME}/bin/sops + chmod 755 ${HOME}/bin/sops + echo "${HOME}/bin" >> $GITHUB_PATH - name: Install Helm if: ${{ env.DEPLOY }} @@ -78,7 +78,8 @@ jobs: - name: Deploy hubs to staging if: ${{ env.DEPLOY }} run: | - GOOGLE_APPLICATION_CREDENTIALS=${{ secrets.SOPS_KEY }} + echo ${{ secrets.SOPS_KEY }} > ${HOME}/sops.key + export GOOGLE_APPLICATION_CREDENTIALS="${HOME}/sops.key" for hub in $(echo -e "${{ env.DEPLOY_HUBS }}"); do echo "Deploying $hub to staging" hubploy --verbose deploy $hub hub staging From 9b93f96bcb8625ace574c6e3d818d1b32cc1324d Mon Sep 17 00:00:00 2001 From: shane knapp Date: Mon, 19 Aug 2024 13:41:32 -0700 Subject: [PATCH 25/28] whee this is FUN --- .github/workflows/deploy-to-staging.yaml | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/.github/workflows/deploy-to-staging.yaml b/.github/workflows/deploy-to-staging.yaml index b2ef46eab..6084b2a97 100644 --- a/.github/workflows/deploy-to-staging.yaml +++ b/.github/workflows/deploy-to-staging.yaml @@ -63,10 +63,18 @@ jobs: if: ${{ env.DEPLOY }} run: | mkdir -p ${HOME}/bin - curl -sSL https://github.com/mozilla/sops/releases/download/v3.7.0/sops-v3.7.0.linux -o ${HOME}/bin/sops + curl -sSL https://github.com/mozilla/sops/releases/download/v3.9.0/sops-v3.9.0.linux -o ${HOME}/bin/sops chmod 755 ${HOME}/bin/sops echo "${HOME}/bin" >> $GITHUB_PATH + - name: Store SOPS secret in a file + if: ${{ env.DEPLOY }} + run: | + cat << EOF > ${HOME}/sops.key + ${{ secrets.SOPS_KEY }} + EOF + echo "GOOGLE_APPLICATION_CREDENTIALS=${HOME}/sops.key" >> $GITHUB_ENV + - name: Install Helm if: ${{ env.DEPLOY }} run: | @@ -78,8 +86,6 @@ jobs: - name: Deploy hubs to staging if: ${{ env.DEPLOY }} run: | - echo ${{ secrets.SOPS_KEY }} > ${HOME}/sops.key - export GOOGLE_APPLICATION_CREDENTIALS="${HOME}/sops.key" for hub in $(echo -e "${{ env.DEPLOY_HUBS }}"); do echo "Deploying $hub to staging" hubploy --verbose deploy $hub hub staging From 832eab67af60aa846d4d049d0c48f64849159d55 Mon Sep 17 00:00:00 2001 From: shane knapp Date: Mon, 19 Aug 2024 13:54:57 -0700 Subject: [PATCH 26/28] fix broken url for sops --- .github/workflows/deploy-to-staging.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy-to-staging.yaml b/.github/workflows/deploy-to-staging.yaml index 6084b2a97..f692b3f0f 100644 --- a/.github/workflows/deploy-to-staging.yaml +++ b/.github/workflows/deploy-to-staging.yaml @@ -63,7 +63,7 @@ jobs: if: ${{ env.DEPLOY }} run: | mkdir -p ${HOME}/bin - curl -sSL https://github.com/mozilla/sops/releases/download/v3.9.0/sops-v3.9.0.linux -o ${HOME}/bin/sops + curl -sSL https://github.com/getsops/sops/releases/download/v3.9.0/sops-v3.9.0.linux.amd64 -o ${HOME}/bin/sops chmod 755 ${HOME}/bin/sops echo "${HOME}/bin" >> $GITHUB_PATH From 789432bd51f0c48671751f7cbb3d3abbde3d0faf Mon Sep 17 00:00:00 2001 From: shane knapp Date: Mon, 19 Aug 2024 14:02:46 -0700 Subject: [PATCH 27/28] add gke auth plugin --- .github/workflows/deploy-to-staging.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/deploy-to-staging.yaml b/.github/workflows/deploy-to-staging.yaml index f692b3f0f..c72f4db5b 100644 --- a/.github/workflows/deploy-to-staging.yaml +++ b/.github/workflows/deploy-to-staging.yaml @@ -58,6 +58,8 @@ jobs: - name: Install Google Cloud SDK if: ${{ env.DEPLOY }} uses: google-github-actions/setup-gcloud@v2 + with: + install_components: 'gke-gcloud-auth-plugin' - name: Install SOPS if: ${{ env.DEPLOY }} From 4c3701d76bce7503ca14c0a59c9841eae84122f2 Mon Sep 17 00:00:00 2001 From: shane knapp Date: Mon, 19 Aug 2024 14:08:49 -0700 Subject: [PATCH 28/28] turn this off for now --- .../{deploy-to-staging.yaml => deploy-to-staging.yaml.disabled} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename .github/workflows/{deploy-to-staging.yaml => deploy-to-staging.yaml.disabled} (100%) diff --git a/.github/workflows/deploy-to-staging.yaml b/.github/workflows/deploy-to-staging.yaml.disabled similarity index 100% rename from .github/workflows/deploy-to-staging.yaml rename to .github/workflows/deploy-to-staging.yaml.disabled