Switch from Oracle to SQL Server for development #10
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
# This workflow will build a .NET project and deploy the Angular frontend to GitHub Pages. | |
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-net | |
name: Full Solution CI | |
on: | |
push: | |
branches: [ "master" ] | |
pull_request: | |
branches: [ "master" ] | |
permissions: | |
contents: write | |
pages: write | |
id-token: write | |
jobs: | |
build-backend: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Setup .NET | |
uses: actions/setup-dotnet@v3 | |
with: | |
dotnet-version: 6.0.x | |
- name: Restore dependencies | |
run: dotnet restore | |
- name: Build Backend | |
run: dotnet build --no-restore | |
- name: Test Backend | |
run: dotnet test --no-build --verbosity normal | |
build-frontend: | |
runs-on: ubuntu-latest | |
needs: build-backend | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Setup Node.js | |
uses: actions/setup-node@v3 | |
with: | |
node-version: '20' | |
- name: Install dependencies | |
run: npm install | |
working-directory: ./src/MLS.MatLidStoreUI | |
- name: Install Angular CLI | |
run: npm install -g @angular/[email protected] | |
working-directory: ./src/MLS.MatLidStoreUI | |
- name: Install Husky | |
run: echo "Skipping Husky installation" | |
working-directory: ../ | |
- name: Test Angular application | |
run: echo "Skipping tests as no .spec.ts files are present" | |
working-directory: ./src/MLS.MatLidStoreUI | |
- name: Build Angular application | |
run: ng build --configuration production --output-path docs --base-href /MatLidStore/ | |
working-directory: ./src/MLS.MatLidStoreUI | |
- name: Check artifact size and content | |
run: | | |
echo "Size of docs directory:" | |
du -sh ./src/MLS.MatLidStoreUI/docs | |
echo "Contents of docs directory:" | |
ls -la ./src/MLS.MatLidStoreUI/docs | |
- name: Create .nojekyll file | |
run: echo > ./src/MLS.MatLidStoreUI/docs/.nojekyll | |
- name: Clean up unnecessary files | |
run: | | |
find ./src/MLS.MatLidStoreUI/docs -name '*.map' -type f -delete | |
find ./src/MLS.MatLidStoreUI/docs -name 'node_modules' -type d -exec rm -rf {} + | |
- name: Check for errors in docs folder | |
run: | | |
if [ -n "$(find ./src/MLS.MatLidStoreUI/docs -type l)" ]; then | |
echo "There are symlinks in the docs directory." | |
exit 1 | |
else | |
echo "No symlinks found." | |
fi | |
- name: Create .nojekyll file | |
run: echo > ./src/MLS.MatLidStoreUI/docs/.nojekyll | |
- name: Upload production-ready build files | |
uses: actions/upload-pages-artifact@v3 | |
with: | |
name: github-pages | |
path: ./src/MLS.MatLidStoreUI/docs | |
deploy: | |
runs-on: ubuntu-latest | |
needs: build-frontend | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Download production files | |
uses: actions/download-artifact@v4 | |
with: | |
name: github-pages | |
path: ./src/MLS.MatLidStoreUI/docs | |
- name: Deploy to GitHub Pages | |
uses: actions/deploy-pages@v4 | |
with: | |
token: ${{ secrets.GITHUB_TOKEN }} |