Merge pull request #719 from SlcRobinME/main #26
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: Azure Static Web Apps CI/CD | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
types: [opened, synchronize, reopened, closed] | |
branches: | |
- main | |
jobs: | |
build_job: | |
runs-on: windows-latest | |
name: Build Job | |
steps: | |
- name: checkout repository | |
uses: actions/checkout@v4 | |
with: | |
submodules: true | |
- name: Install DocFX | |
run: dotnet tool update -g docfx | |
env: | |
CI: true | |
- name: build Documentation | |
id: build-documentation | |
run: | | |
docfx build --warningsAsErrors | |
shell: powershell | |
- name: Zip artifact for deployment | |
run: Compress-Archive -Path _site/* -DestinationPath .\_site.zip | |
- name: Publish results | |
uses: actions/upload-artifact@v4 | |
with: | |
name: release | |
path: _site.zip | |
deploy_job_SA_SWA_connectordocs: | |
if: (github.event_name == 'push' && github.repository == 'SkylineCommunications/dataminer-docs-connectors') | |
runs-on: ubuntu-latest | |
needs: build_job | |
name: Deploy Job to Storage Account with SWA and FD | |
steps: | |
- uses: actions/download-artifact@v4 | |
with: | |
name: release | |
path: . | |
- name: Unzip artifact for deployment | |
run: Expand-Archive -Path _site.zip -DestinationPath ./_site | |
shell: pwsh | |
- name: Upload the new files | |
env: | |
AZURE_STORAGE_CONNECTION_STRING: ${{ secrets.AZURE_SA_DOCSCONNECTORS_SWA }} | |
run: | | |
wget https://aka.ms/downloadazcopy-v10-linux | |
tar -xvf downloadazcopy-v10-linux | |
sudo cp ./azcopy_linux_amd64_*/azcopy /usr/bin/ | |
az storage blob sync \ | |
--source _site \ | |
--container '$web' | |
# - name: Upload the new files | |
# uses: bacongobbler/azure-blob-storage-upload@main | |
# with: | |
# source_dir: _site | |
# container_name: $web | |
# connection_string: ${{ secrets.AZURE_SA_DOCSCONNECTORS_SWA }} | |
# sync: 'true' | |
deploy_job_Storage_Account: | |
if: (github.event_name == 'push' && github.repository == 'SkylineCommunications/dataminer-docs-connectors') | |
runs-on: ubuntu-latest | |
needs: build_job | |
name: Deploy Job to Storage account | |
steps: | |
- uses: actions/download-artifact@v4 | |
with: | |
name: release | |
path: . | |
- name: Unzip artifact for deployment | |
run: Expand-Archive -Path _site.zip -DestinationPath ./_site | |
shell: pwsh | |
- name: Delete files that should not be indexed by Azure Search Service | |
run: | | |
rm -f ./_site/404.html | |
rm -f ./_site/README.html | |
find ./_site -name 'toc.html' -type f -delete | |
- name: Upload the new files | |
env: | |
AZURE_STORAGE_CONNECTION_STRING: ${{ secrets.AZURE_STORAGE_ACCOUNT_DOCS_CONNECTION_STRING }} | |
run: | | |
wget https://aka.ms/downloadazcopy-v10-linux | |
tar -xvf downloadazcopy-v10-linux | |
sudo cp ./azcopy_linux_amd64_*/azcopy /usr/bin/ | |
az storage blob sync \ | |
--source _site \ | |
--container docs-connectors | |
# - name: Upload the new files | |
# uses: bacongobbler/azure-blob-storage-upload@main | |
# with: | |
# source_dir: _site | |
# container_name: docs-connectors | |
# connection_string: ${{ secrets.AZURE_STORAGE_ACCOUNT_DOCS_CONNECTION_STRING }} | |
# # Sync: true keeps the source and destination in sync, | |
# # otherwise changed files and new would be pushed, but deleted wouldn't be removed. | |
# sync: 'true' | |
reindex_azure_search: | |
runs-on: ubuntu-latest | |
needs: deploy_job_Storage_Account | |
name: Re-index azure search | |
steps: | |
- name: Azure Cognitive Search Reindex | |
# You may pin to the exact commit or the version. | |
# uses: andrewconnell/azure-search-index@ac64a40924771a415e01d52db4c1d557ecd3a99f | |
uses: andrewconnell/azure-search-index@2.0.3 | |
with: | |
# Name of the Azure Cognitive Search resource. | |
azure-search-instance: docs-srch | |
# Search indexer to reindex | |
azure-search-indexer: azureblob-indexer-docs-connectors | |
# Admin key used to connect to Azure Cognitive Search instance | |
azure-search-admin-key: ${{ secrets.AZURE_SEARCH_KEY }} |