2021-06-21 23:35:19 -07:00
|
|
|
name: Azure Static Web Apps CI/CD
|
|
|
|
|
2020-10-17 10:39:28 -07:00
|
|
|
on:
|
|
|
|
push:
|
|
|
|
branches:
|
|
|
|
- main
|
|
|
|
paths:
|
2022-05-12 22:54:59 -07:00
|
|
|
- 'website/**'
|
2021-04-12 10:22:24 -07:00
|
|
|
- 'themes/**'
|
2021-06-21 23:35:19 -07:00
|
|
|
|
2023-03-22 01:38:41 -07:00
|
|
|
permissions:
|
|
|
|
id-token: write
|
|
|
|
contents: read
|
|
|
|
|
2020-10-17 10:39:28 -07:00
|
|
|
jobs:
|
2021-06-21 23:35:19 -07:00
|
|
|
build_and_deploy:
|
2020-10-17 10:39:28 -07:00
|
|
|
runs-on: ubuntu-latest
|
2021-06-21 23:35:19 -07:00
|
|
|
name: Build and Deploy
|
2020-10-17 10:39:28 -07:00
|
|
|
steps:
|
2023-04-13 21:41:46 -07:00
|
|
|
- uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab
|
2020-10-17 10:39:28 -07:00
|
|
|
with:
|
2021-06-21 23:35:19 -07:00
|
|
|
submodules: true
|
2021-09-01 03:51:38 -07:00
|
|
|
persist-credentials: false
|
|
|
|
- name: Install Go
|
2023-03-15 22:20:48 -07:00
|
|
|
uses: actions/setup-go@4d34df0c2316fe8122ab82dc22947d607c0c91f9
|
2021-09-01 03:51:38 -07:00
|
|
|
with:
|
2023-03-12 05:39:39 -07:00
|
|
|
go-version: 1.20.2
|
2023-01-05 22:12:20 -08:00
|
|
|
- uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c
|
2022-07-01 12:41:47 -07:00
|
|
|
with:
|
2022-07-01 14:50:37 -07:00
|
|
|
node-version: 17.6.0
|
2022-03-10 23:58:46 -08:00
|
|
|
# Create Kind cluster to have a Kubernetes context for cloud-native-azure theme
|
|
|
|
# Images are defined on every Kind release
|
|
|
|
# See https://github.com/kubernetes-sigs/kind/releases
|
|
|
|
- name: Create k8s v1.23 Kind Cluster
|
2022-12-13 16:31:29 -08:00
|
|
|
uses: helm/kind-action@d8ccf8fb623ce1bb360ae2f45f323d9d5c5e9f00
|
2022-03-10 23:58:46 -08:00
|
|
|
with:
|
|
|
|
node_image: kindest/node:v1.23.4@sha256:0e34f0d0fd448aa2f2819cfd74e99fe5793a6e4938b328f657c8e3f81ee0dfb9
|
2022-03-13 05:06:48 -07:00
|
|
|
cluster_name: posh
|
2022-03-14 00:02:00 -07:00
|
|
|
- name: Create Kubernetes namespace
|
|
|
|
run: |
|
|
|
|
kubectl create ns demo
|
|
|
|
- name: Set default Kubernetes namespace
|
|
|
|
run: |
|
|
|
|
kubectl config set-context posh --namespace demo
|
2022-11-27 10:42:12 -08:00
|
|
|
- uses: azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2
|
2022-03-13 05:07:12 -07:00
|
|
|
with:
|
2023-03-22 01:38:41 -07:00
|
|
|
client-id: ${{ secrets.AZURE_CLIENT_ID }}
|
|
|
|
tenant-id: ${{ secrets.AZURE_TENANT_ID }}
|
|
|
|
subscription-id: ${{ secrets.AZURE_SUBSCRIPTION_ID }}
|
2021-09-01 03:51:38 -07:00
|
|
|
- name: Build oh-my-posh 🔧
|
|
|
|
run: |
|
|
|
|
cd src
|
|
|
|
go build -o ./bin/oh-my-posh
|
|
|
|
cd ..
|
|
|
|
- name: Render themes 🎨
|
|
|
|
run: |
|
|
|
|
export PATH="$PWD/src/bin:$PATH"
|
2022-05-12 22:54:59 -07:00
|
|
|
cd website
|
2022-07-01 12:41:47 -07:00
|
|
|
npm install --legacy-peer-deps
|
2021-09-01 03:51:38 -07:00
|
|
|
npm run themes
|
|
|
|
cd ..
|
|
|
|
- name: Build Docs And Deploy 🚀
|
2021-06-21 23:35:19 -07:00
|
|
|
id: builddeploy
|
2022-09-13 23:25:14 -07:00
|
|
|
uses: Azure/static-web-apps-deploy@1a947af9992250f3bc2e68ad0754c0b0c11566c9
|
2021-04-04 11:28:41 -07:00
|
|
|
with:
|
2021-06-21 23:35:19 -07:00
|
|
|
azure_static_web_apps_api_token: ${{ secrets.AZURE_STATIC_WEB_APPS_API_TOKEN_ASHY_MEADOW_063E9BA03 }}
|
|
|
|
repo_token: ${{ secrets.GITHUB_TOKEN }} # Used for Github integrations (i.e. PR comments)
|
|
|
|
action: "upload"
|
|
|
|
###### Repository/Build Configurations - These values can be configured to match your app requirements. ######
|
|
|
|
# For more information regarding Static Web App workflow configurations, please visit: https://aka.ms/swaworkflowconfig
|
2022-05-12 22:54:59 -07:00
|
|
|
app_location: "/website" # App source code path
|
|
|
|
api_location: "/website/api" # Api source code path - optional
|
2021-06-21 23:35:19 -07:00
|
|
|
output_location: "build" # Built app content directory - optional
|