diff --git a/.github/workflows/indexnow.yml b/.github/workflows/indexnow.yml new file mode 100644 index 0000000..898f907 --- /dev/null +++ b/.github/workflows/indexnow.yml @@ -0,0 +1,23 @@ +# Sample workflow for building and deploying a Jekyll site to GitHub Pages +name: Index Now + +on: + schedule: + # * is a special character in YAML so you have to quote this string + # https://crontab.cronhub.io/ + - cron: '0 0 * * SAT' + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: + +jobs: + indexing: + runs-on: ubuntu-latest + steps: + - name: IndexNow Action + uses: bojieyang/indexnow-action@v2 + with: + sitemap-location: 'https://ddm.masesgroup.com/sitemap.xml' + key: ${{ secrets.INDEXNOW_KEY }} + since-unit: week + limit: 10000 + timeout: 600000 diff --git a/.github/workflows/jekyll-gh-pages.yml b/.github/workflows/jekyll-gh-pages.yml new file mode 100644 index 0000000..75e8e57 --- /dev/null +++ b/.github/workflows/jekyll-gh-pages.yml @@ -0,0 +1,67 @@ +# Sample workflow for building and deploying a Jekyll site to GitHub Pages +name: Deploy Jekyll with GitHub Pages dependencies preinstalled + +on: + # Runs on pushes targeting the default branch + push: + branches: ["master"] + paths: + - docs/** + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: + +# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages +permissions: + contents: read + pages: write + id-token: write + +# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued. +# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete. +concurrency: + group: "pages" + cancel-in-progress: false + +jobs: + # Build job + build: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + with: + fetch-depth: '0' + - name: Support + uses: actions/checkout@v4 + with: + repository: masesgroup/WebSitesSupport + path: WebSitesSupport + - name: Setup Pages + uses: actions/configure-pages@v5 + - name: Setup IndexNow # Generate files dynamically to prevent them from being leaked in public repositories. + run: echo ${{ secrets.INDEXNOW_KEY }} > ./docs/${{ secrets.INDEXNOW_KEY }}.txt + - name: Build with Jekyll + uses: actions/jekyll-build-pages@v1 + with: + source: ./docs/ + destination: ./_site + - name: Sitemap lastmod replacer + shell: pwsh + run: ./WebSitesSupport/SitemapLastmodReplacer.ps1 -baseUrl https://ddm.masesgroup.com -baseFolder ${{ github.workspace }}/docs/ -inSitemapFile ${{ github.workspace }}/_site/sitemap.xml -outSitemapFile ${{ github.workspace }}/sitemap.xml + - run: sudo cp ${{ github.workspace }}/sitemap.xml ${{ github.workspace }}/_site/sitemap.xml + - name: Upload artifact + uses: actions/upload-pages-artifact@v3 + + # Deployment job + deploy: + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + outputs: + page_url: ${{ steps.deployment.outputs.page_url }} + runs-on: ubuntu-latest + needs: build + steps: + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v4 \ No newline at end of file