diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml
index 0cae015..ecdf037 100644
--- a/.github/workflows/stale.yml
+++ b/.github/workflows/stale.yml
@@ -13,7 +13,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- - uses: actions/stale@v7
+ - uses: actions/stale@v8
with:
stale-issue-message: 'This issue has become stale and will be closed automatically within a period of time. Sorry about that.'
stale-pr-message: 'This pull request has become stale and will be closed automatically within a period of time. Sorry about that.'
diff --git a/CODEOWNERS b/CODEOWNERS
index 0a7c0a5..a47bd5b 100644
--- a/CODEOWNERS
+++ b/CODEOWNERS
@@ -1,4 +1,4 @@
-* @actions/starter-workflows
+* @actions/actions-workflow-development-reviewers
-/code-scanning/ @actions/advanced-security-code-scanning @actions/starter-workflows
-/pages/ @actions/pages @actions/starter-workflows
+/code-scanning/ @actions/advanced-security-code-scanning @actions/actions-workflow-development-reviewers
+/pages/ @actions/pages @actions/actions-workflow-development-reviewers
diff --git a/automation/manual.yml b/automation/manual.yml
index 4a7131e..11b2e35 100644
--- a/automation/manual.yml
+++ b/automation/manual.yml
@@ -15,6 +15,8 @@ on:
default: 'World'
# Input has to be provided for the workflow to run
required: true
+ # The data type of the input
+ type: string
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
@@ -27,4 +29,4 @@ jobs:
steps:
# Runs a single command using the runners shell
- name: Send greeting
- run: echo "Hello ${{ github.event.inputs.name }}"
\ No newline at end of file
+ run: echo "Hello ${{ inputs.name }}"
diff --git a/ci/deno.yml b/ci/deno.yml
index 5ee940d..92338c9 100644
--- a/ci/deno.yml
+++ b/ci/deno.yml
@@ -27,7 +27,7 @@ jobs:
- name: Setup Deno
# uses: denoland/setup-deno@v1
- uses: denoland/setup-deno@9db7f66e8e16b5699a514448ce994936c63f0d54
+ uses: denoland/setup-deno@61fe2df320078202e33d7d5ad347e7dcfa0e8f31 # v1.1.2
with:
deno-version: v1.x
diff --git a/ci/gem-push.yml b/ci/gem-push.yml
index 8905272..dd6d867 100644
--- a/ci/gem-push.yml
+++ b/ci/gem-push.yml
@@ -17,7 +17,10 @@ jobs:
steps:
- uses: actions/checkout@v3
- name: Set up Ruby 2.6
- uses: actions/setup-ruby@v1
+ # To automatically get bug fixes and new Ruby versions for ruby/setup-ruby,
+ # change this to (see https://github.com/ruby/setup-ruby#versioning):
+ # uses: ruby/setup-ruby@v1
+ uses: ruby/setup-ruby@55283cc23133118229fd3f97f9336ee23a179fcf # v1.146.0
with:
ruby-version: 2.6.x
diff --git a/ci/ruby.yml b/ci/ruby.yml
index e1551d5..9e94081 100644
--- a/ci/ruby.yml
+++ b/ci/ruby.yml
@@ -30,7 +30,7 @@ jobs:
# To automatically get bug fixes and new Ruby versions for ruby/setup-ruby,
# change this to (see https://github.com/ruby/setup-ruby#versioning):
# uses: ruby/setup-ruby@v1
- uses: ruby/setup-ruby@ee2113536afb7f793eed4ce60e8d3b26db912da4 # v1.127.0
+ uses: ruby/setup-ruby@55283cc23133118229fd3f97f9336ee23a179fcf # v1.146.0
with:
ruby-version: ${{ matrix.ruby-version }}
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
diff --git a/ci/rubyonrails.yml b/ci/rubyonrails.yml
index 5102b3d..20ff014 100644
--- a/ci/rubyonrails.yml
+++ b/ci/rubyonrails.yml
@@ -30,7 +30,7 @@ jobs:
uses: actions/checkout@v3
# Add or replace dependency steps here
- name: Install Ruby and gems
- uses: ruby/setup-ruby@ee2113536afb7f793eed4ce60e8d3b26db912da4 # v1.127.0
+ uses: ruby/setup-ruby@55283cc23133118229fd3f97f9336ee23a179fcf # v1.146.0
with:
bundler-cache: true
# Add or replace database setup steps here
@@ -46,7 +46,7 @@ jobs:
- name: Checkout code
uses: actions/checkout@v3
- name: Install Ruby and gems
- uses: ruby/setup-ruby@ee2113536afb7f793eed4ce60e8d3b26db912da4 # v1.127.0
+ uses: ruby/setup-ruby@55283cc23133118229fd3f97f9336ee23a179fcf # v1.146.0
with:
bundler-cache: true
# Add or replace any other lints here
diff --git a/code-scanning/brakeman.yml b/code-scanning/brakeman.yml
index d381e85..197300c 100644
--- a/code-scanning/brakeman.yml
+++ b/code-scanning/brakeman.yml
@@ -35,7 +35,7 @@ jobs:
# Customize the ruby version depending on your needs
- name: Setup Ruby
- uses: ruby/setup-ruby@ee2113536afb7f793eed4ce60e8d3b26db912da4 # v1.127.0
+ uses: ruby/setup-ruby@55283cc23133118229fd3f97f9336ee23a179fcf # v1.146.0
with:
ruby-version: '2.7'
diff --git a/code-scanning/codeql.yml b/code-scanning/codeql.yml
index 18667cf..660514a 100644
--- a/code-scanning/codeql.yml
+++ b/code-scanning/codeql.yml
@@ -28,7 +28,8 @@ jobs:
# - https://gh.io/supported-runners-and-hardware-resources
# - https://gh.io/using-larger-runners
# Consider using larger runners for possible analysis time improvements.
- runs-on: ubuntu-latest
+ runs-on: ${{ (matrix.language == 'swift' && 'macos-latest') || 'ubuntu-latest' }}
+ timeout-minutes: ${{ (matrix.language == 'swift' && 120) || 360 }}
permissions:
actions: read
contents: read
@@ -56,11 +57,11 @@ jobs:
# By default, queries listed here will override any specified in a config file.
# Prefix the list here with "+" to use these queries and those in the config file.
- # Details on CodeQL's query packs refer to : https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs
+ # For more details on CodeQL's query packs, refer to: https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs
# queries: security-extended,security-and-quality
- # Autobuild attempts to build any compiled languages (C/C++, C#, Go, or Java).
+ # Autobuild attempts to build any compiled languages (C/C++, C#, Go, Java, or Swift).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@v2
diff --git a/code-scanning/credo.yml b/code-scanning/credo.yml
new file mode 100644
index 0000000..c1fb8d1
--- /dev/null
+++ b/code-scanning/credo.yml
@@ -0,0 +1,61 @@
+# This workflow uses actions that are not certified by GitHub.
+# They are provided by a third-party and are governed by
+# separate terms of service, privacy policy, and support
+# documentation.
+
+
+# Credo is a static code analysis tool for the Elixir language with a focus on teaching and code consistency.
+# https://github.com/rrrene/credo
+#
+# To use this workflow, you must have GitHub Advanced Security (GHAS) enabled for your repository.
+#
+# Instructions:
+# 1. Add :credo as a dependency to your project's mix.exs with version ~> 1.7.0-rc.1 - https://github.com/rrrene/credo#installation-and-usage
+# 2. Follow the annotated workflow below and make any necessary modifications then save the workflow to your repository
+# and review the "Security" tab once the action has run.
+
+name: Credo
+
+on:
+ push:
+ branches: [ $default-branch, $protected-branches ]
+ pull_request:
+ # The branches below must be a subset of the branches above
+ branches: [ $default-branch ]
+ schedule:
+ - cron: $cron-weekly
+
+permissions:
+ contents: read
+
+jobs:
+ security-scan:
+ permissions:
+ contents: read # for actions/checkout to fetch code
+ security-events: write # for github/codeql-action/upload-sarif to upload SARIF results
+ actions: read # only required for a private repository by github/codeql-action/upload-sarif to get the Action run status
+ runs-on: ubuntu-latest
+ strategy:
+ fail-fast: false
+ matrix:
+ otp: [version]
+ elixir: [version]
+ steps:
+ - uses: actions/checkout@v3
+ - uses: erlef/setup-beam@988e02bfe678367a02564f65ca2e37726dc0268f
+ with:
+ otp-version: ${{matrix.otp}}
+ elixir-version: ${{matrix.elixir}}
+ - name: get dependencies
+ run: mix deps.get
+ - name: compile dependencies
+ run: mix deps.compile
+ - name: compile
+ run: mix compile
+ - name: credo-scan
+ run: mix credo --format=sarif > credo_output.sarif
+ - name: upload sarif
+ uses: github/codeql-action/upload-sarif@v2
+ with:
+ # Path to SARIF file relative to the root of the repository
+ sarif_file: credo_output.sarif
diff --git a/code-scanning/detekt.yml b/code-scanning/detekt.yml
index a13a517..15aeb45 100644
--- a/code-scanning/detekt.yml
+++ b/code-scanning/detekt.yml
@@ -77,7 +77,7 @@ jobs:
fi
DETEKT_DOWNLOAD_URL=$(jq --raw-output '.data.repository.release.releaseAssets.nodes[0].downloadUrl' gh_response.json)
- echo "::set-output name=download_url::$DETEKT_DOWNLOAD_URL"
+ echo "download_url=$DETEKT_DOWNLOAD_URL" >> $GITHUB_OUTPUT
# Sets up the detekt cli
- name: Setup Detekt
diff --git a/code-scanning/endorlabs.yml b/code-scanning/endorlabs.yml
new file mode 100644
index 0000000..1ad0e26
--- /dev/null
+++ b/code-scanning/endorlabs.yml
@@ -0,0 +1,51 @@
+# This workflow uses actions that are not certified by GitHub.
+# They are provided by a third-party and are governed by
+# separate terms of service, privacy policy, and support
+# documentation.
+
+name: Endor Labs
+on:
+ push:
+ branches: [ $default-branch, $protected-branches ]
+ pull_request:
+ branches: [ $default-branch ]
+ schedule:
+ - cron: $cron-weekly
+jobs:
+ scan:
+ permissions:
+ security-events: write # Used to upload sarif artifact to GitHub
+ contents: read # Used to checkout a private repository by actions/checkout.
+ actions: read # Required for private repositories to upload sarif files. GitHub Advanced Security licenses are required.
+ id-token: write # Used for keyless authentication to Endor Labs
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout repository
+ uses: actions/checkout@v3
+ #### Package Build Instructions
+ ### Use this section to define the build steps used by your software package.
+ ### Endor Labs builds your software for you where possible but the required build tools must be made availible.
+ # - name: Setup Java
+ # uses: actions/setup-java@v3
+ # with:
+ # distribution: 'microsoft'
+ # java-version: '17'
+ # - name: Build Package
+ # run: mvn clean install
+ - name: Endor Labs scan pull request
+ if: github.event_name == 'pull_request'
+ uses: endorlabs/github-action@b51bd06466b545f01a6ac788e3e1147695d3936c
+ with:
+ namespace: "example" # Modify the namespace to your Endor Labs tenant namespace.
+ sarif_file: findings.sarif
+ - name: Endor Labs scan monitor
+ if: github.event_name == 'push'
+ uses: endorlabs/github-action@b51bd06466b545f01a6ac788e3e1147695d3936c
+ with:
+ namespace: "example" # Modify the namespace to your Endor Labs tenant namespace.
+ ci_run: "false"
+ sarif_file: findings.sarif
+ - name: Upload SARIF to github
+ uses: github/codeql-action/upload-sarif@9885f86fab4879632b7e44514f19148225dfbdcd
+ with:
+ sarif_file: findings.sarif
diff --git a/code-scanning/frogbot-scan-and-fix.yml b/code-scanning/frogbot-scan-and-fix.yml
index 96dcfb5..feacb7f 100644
--- a/code-scanning/frogbot-scan-and-fix.yml
+++ b/code-scanning/frogbot-scan-and-fix.yml
@@ -7,8 +7,7 @@
# Uses JFrog Xray to scan the project.
# Read more about Frogbot here - https://github.com/jfrog/frogbot#frogbot
-# Frogbot uses a frogbot-config.yml file to run. The following article will guide you through the process of creating this file:
-# https://github.com/jfrog/frogbot/blob/master/docs/frogbot-config.md
+# Some projects require creating a frogbot-config.yml file. Read more about it here - https://github.com/jfrog/frogbot/blob/master/docs/frogbot-config.md
name: "Frogbot Scan and Fix"
on:
@@ -26,10 +25,17 @@ jobs:
# IMPORTANT:
# 1. See the following link for information about the tools that need to be installed for Frogbot to work - https://github.com/jfrog/frogbot/tree/master/docs/templates/github-actions/scan-and-fix
- # 2. Frogbot requires a frogbot-config.yml to run. Read more about in the following link - https://github.com/jfrog/frogbot/blob/master/docs/frogbot-config.md
+ # 2. Some projects require creating a frogbot-config.yml file. Read more about it here - https://github.com/jfrog/frogbot/blob/master/docs/frogbot-config.md
- - uses: jfrog/frogbot@8daba7e9515dbc898012367c71c1018449cd7716
+ - uses: jfrog/frogbot@3395426f351556d4568e30a6dfd2909dbedae99e
env:
+ # [Mandatory if the two conditions below are met]
+ # 1. The project uses npm, yarn 2, NuGet or .NET to download its dependencies
+ # 2. The `installCommand` variable isn't set in your frogbot-config.yml file.
+ #
+ # The command that installs the project dependencies (e.g "npm i", "nuget restore" or "dotnet restore")
+ # JF_INSTALL_DEPS_CMD: ""
+
# [Mandatory]
# JFrog platform URL
JF_URL: ${{ secrets.JF_URL }}
@@ -38,14 +44,26 @@ jobs:
# JFrog access token with 'read' permissions on Xray service
JF_ACCESS_TOKEN: ${{ secrets.JF_ACCESS_TOKEN }}
- # [Mandatory]
- # The GitHub token automatically generated for the job
- JF_GIT_TOKEN: ${{ secrets.GITHUB_TOKEN }}
-
# [Mandatory if JF_ACCESS_TOKEN is not provided]
# JFrog username with 'read' permissions for Xray. Must be provided with JF_PASSWORD
# JF_USER: ${{ secrets.JF_USER }}
# [Mandatory if JF_ACCESS_TOKEN is not provided]
# JFrog password. Must be provided with JF_USER
- # JF_PASSWORD: ${{ secrets.JF_PASSWORD }}
\ No newline at end of file
+ # JF_PASSWORD: ${{ secrets.JF_PASSWORD }}
+
+ # [Mandatory]
+ # The GitHub token automatically generated for the job
+ JF_GIT_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+
+ # [Optional]
+ # If the machine that runs Frogbot has no access to the internat, set the name of a remote repository
+ # in Artifactory, which proxies https://releases.jfrog.io/artifactory
+ # The 'frogbot' executable and other tools it needs will be downloaded through this repository.
+ # JF_RELEASES_REPO: ""
+
+ # [Optional]
+ # Frogbot will download the project dependencies, if they're not cached locally. To download the
+ # dependencies from a virtual repository in Artifactory, set the name of of the repository. There's no
+ # need to set this value, if it is set in the frogbot-config.yml file.
+ # JF_DEPS_REPO: ""
\ No newline at end of file
diff --git a/code-scanning/frogbot-scan-pr.yml b/code-scanning/frogbot-scan-pr.yml
index fe7d125..9e8b6c5 100644
--- a/code-scanning/frogbot-scan-pr.yml
+++ b/code-scanning/frogbot-scan-pr.yml
@@ -7,8 +7,7 @@
# Uses JFrog Xray to scan the project.
# Read more about Frogbot here - https://github.com/jfrog/frogbot#frogbot
-# Frogbot uses a frogbot-config.yml file to run. The following article will guide you through the process of creating this file:
-# https://github.com/jfrog/frogbot/blob/master/docs/frogbot-config.md
+# Some projects require creating a frogbot-config.yml file. Read more about it here - https://github.com/jfrog/frogbot/blob/master/docs/frogbot-config.md
name: "Frogbot Scan Pull Request"
on:
@@ -31,10 +30,17 @@ jobs:
# IMPORTANT:
# 1. See the following link for information about the tools that need to be installed for Frogbot to work - https://github.com/jfrog/frogbot/tree/master/docs/templates/github-actions/scan-and-fix
- # 2. Frogbot requires a frogbot-config.yml to run. Read more about in the following link - https://github.com/jfrog/frogbot/blob/master/docs/frogbot-config.md
+ # 2. Some projects require creating a frogbot-config.yml file. Read more about it here - https://github.com/jfrog/frogbot/blob/master/docs/frogbot-config.md
- - uses: jfrog/frogbot@8daba7e9515dbc898012367c71c1018449cd7716
+ - uses: jfrog/frogbot@3395426f351556d4568e30a6dfd2909dbedae99e
env:
+ # [Mandatory if the two conditions below are met]
+ # 1. The project uses npm, yarn 2, NuGet or .NET to download its dependencies
+ # 2. The `installCommand` variable isn't set in your frogbot-config.yml file.
+ #
+ # The command that installs the project dependencies (e.g "npm i", "nuget restore" or "dotnet restore")
+ # JF_INSTALL_DEPS_CMD: ""
+
# [Mandatory]
# JFrog platform URL
JF_URL: ${{ secrets.JF_URL }}
@@ -43,14 +49,26 @@ jobs:
# JFrog access token with 'read' permissions on Xray service
JF_ACCESS_TOKEN: ${{ secrets.JF_ACCESS_TOKEN }}
- # [Mandatory]
- # The GitHub token automatically generated for the job
- JF_GIT_TOKEN: ${{ secrets.GITHUB_TOKEN }}
-
# [Mandatory if JF_ACCESS_TOKEN is not provided]
# JFrog username with 'read' permissions for Xray. Must be provided with JF_PASSWORD
# JF_USER: ${{ secrets.JF_USER }}
# [Mandatory if JF_ACCESS_TOKEN is not provided]
# JFrog password. Must be provided with JF_USER
- # JF_PASSWORD: ${{ secrets.JF_PASSWORD }}
\ No newline at end of file
+ # JF_PASSWORD: ${{ secrets.JF_PASSWORD }}
+
+ # [Mandatory]
+ # The GitHub token automatically generated for the job
+ JF_GIT_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+
+ # [Optional]
+ # If the machine that runs Frogbot has no access to the internat, set the name of a remote repository
+ # in Artifactory, which proxies https://releases.jfrog.io/artifactory
+ # The 'frogbot' executable and other tools it needs will be downloaded through this repository.
+ # JF_RELEASES_REPO: ""
+
+ # [Optional]
+ # Frogbot will download the project dependencies, if they're not cached locally. To download the
+ # dependencies from a virtual repository in Artifactory, set the name of of the repository. There's no
+ # need to set this value, if it is set in the frogbot-config.yml file.
+ # JF_DEPS_REPO: ""
\ No newline at end of file
diff --git a/code-scanning/properties/codeql.properties.json b/code-scanning/properties/codeql.properties.json
index f5e78bf..8aaa8f5 100644
--- a/code-scanning/properties/codeql.properties.json
+++ b/code-scanning/properties/codeql.properties.json
@@ -2,7 +2,7 @@
"name": "CodeQL Analysis",
"creator": "GitHub",
"enterprise": true,
- "description": "Security analysis from GitHub for C, C++, C#, Go, Java, JavaScript, TypeScript, Python, Ruby and Kotlin developers.",
+ "description": "Security analysis from GitHub for C, C++, C#, Go, Java, JavaScript, TypeScript, Python, Ruby, Kotlin and Swift developers.",
"iconName": "octicon mark-github",
- "categories": ["Code Scanning", "C", "C++", "C#", "Go", "Java", "JavaScript", "TypeScript", "Python", "Ruby", "Kotlin"]
+ "categories": ["Code Scanning", "C", "C++", "C#", "Go", "Java", "JavaScript", "TypeScript", "Python", "Ruby", "Kotlin", "Swift"]
}
diff --git a/code-scanning/properties/credo.properties.json b/code-scanning/properties/credo.properties.json
new file mode 100644
index 0000000..cdc621f
--- /dev/null
+++ b/code-scanning/properties/credo.properties.json
@@ -0,0 +1,7 @@
+{
+ "name": "Credo Scan",
+ "creator": "Credo",
+ "description": "Credo is a static code analysis tool for the Elixir language with a focus on teaching and code consistency.",
+ "iconName": "code",
+ "categories": ["Code Scanning", "Elixir"]
+}
diff --git a/code-scanning/properties/endorlabs.properties.json b/code-scanning/properties/endorlabs.properties.json
new file mode 100644
index 0000000..4347f4c
--- /dev/null
+++ b/code-scanning/properties/endorlabs.properties.json
@@ -0,0 +1,7 @@
+{
+ "name": "Endor Labs scan",
+ "creator": "Endor Labs",
+ "description": "Identify, prioritize and address open source and code governance issues with Endor Labs.",
+ "iconName": "endorlabs",
+ "categories": ["Code Scanning", "javascript", "python", "java", "php", "c#", "ruby", "go", "kotlin", "scala" ]
+}
diff --git a/code-scanning/properties/psalm.properties.json b/code-scanning/properties/psalm.properties.json
new file mode 100644
index 0000000..381a312
--- /dev/null
+++ b/code-scanning/properties/psalm.properties.json
@@ -0,0 +1,10 @@
+{
+ "name": "Psalm Security Scan",
+ "creator": "psalm",
+ "description": "Psalm is a static analysis tool for finding errors in PHP applications",
+ "iconName": "psalm",
+ "categories": [
+ "Code Scanning",
+ "PHP"
+ ]
+}
diff --git a/code-scanning/psalm.yml b/code-scanning/psalm.yml
new file mode 100644
index 0000000..1e88766
--- /dev/null
+++ b/code-scanning/psalm.yml
@@ -0,0 +1,38 @@
+# This workflow uses actions that are not certified by GitHub.
+# They are provided by a third-party and are governed by
+# separate terms of service, privacy policy, and support
+# documentation.
+
+name: Psalm Security Scan
+
+on:
+ push:
+ branches: [ $default-branch, $protected-branches ]
+ pull_request:
+ # The branches below must be a subset of the branches above
+ branches: [ $default-branch ]
+ schedule:
+ - cron: $cron-weekly
+
+permissions:
+ contents: read
+
+jobs:
+ php-security:
+ runs-on: ubuntu-latest
+ permissions:
+ contents: read # for actions/checkout to fetch code
+ security-events: write # for github/codeql-action/upload-sarif to upload SARIF results
+ actions: read # only required for a private repository by github/codeql-action/upload-sarif to get the Action run status
+
+ steps:
+ - name: Checkout code
+ uses: actions/checkout@v3
+
+ - name: Psalm Security Scan
+ uses: psalm/psalm-github-security-scan@f3e6fd9432bc3e44aec078572677ce9d2ef9c287
+
+ - name: Upload Security Analysis results to GitHub
+ uses: github/codeql-action/upload-sarif@v2
+ with:
+ sarif_file: results.sarif
diff --git a/code-scanning/puppet-lint.yml b/code-scanning/puppet-lint.yml
index 0804ba9..047ff00 100644
--- a/code-scanning/puppet-lint.yml
+++ b/code-scanning/puppet-lint.yml
@@ -36,7 +36,7 @@ jobs:
uses: actions/checkout@v3
- name: Setup Ruby
- uses: ruby/setup-ruby@ee2113536afb7f793eed4ce60e8d3b26db912da4 # v1.127.0
+ uses: ruby/setup-ruby@55283cc23133118229fd3f97f9336ee23a179fcf # v1.146.0
with:
ruby-version: 2.7
bundler-cache: true
diff --git a/code-scanning/rubocop.yml b/code-scanning/rubocop.yml
index 97a693f..e2347db 100644
--- a/code-scanning/rubocop.yml
+++ b/code-scanning/rubocop.yml
@@ -28,7 +28,7 @@ jobs:
# If running on a self-hosted runner, check it meets the requirements
# listed at https://github.com/ruby/setup-ruby#using-self-hosted-runners
- name: Set up Ruby
- uses: ruby/setup-ruby@ee2113536afb7f793eed4ce60e8d3b26db912da4 # v1.127.0
+ uses: ruby/setup-ruby@55283cc23133118229fd3f97f9336ee23a179fcf # v1.146.0
with:
ruby-version: 2.6
diff --git a/deployments/azure-functions-app-container.yml b/deployments/azure-functions-app-container.yml
index 7b438be..1173b95 100644
--- a/deployments/azure-functions-app-container.yml
+++ b/deployments/azure-functions-app-container.yml
@@ -21,8 +21,7 @@ name: Deploy container to Azure Functions App
on:
push:
- branches:
- - [$default-branch]
+ branches: [$default-branch]
permissions:
contents: read
diff --git a/deployments/azure-functions-app-dotnet.yml b/deployments/azure-functions-app-dotnet.yml
index 8b2c23b..824614e 100644
--- a/deployments/azure-functions-app-dotnet.yml
+++ b/deployments/azure-functions-app-dotnet.yml
@@ -20,8 +20,7 @@ name: Deploy DotNet project to Azure Function App
on:
push:
- branches:
- - [$default-branch]
+ branches: [$default-branch]
env:
AZURE_FUNCTIONAPP_NAME: 'your-app-name' # set this to your function app name on Azure
diff --git a/deployments/azure-functions-app-java-gradle.yml b/deployments/azure-functions-app-java-gradle.yml
new file mode 100644
index 0000000..36c50b8
--- /dev/null
+++ b/deployments/azure-functions-app-java-gradle.yml
@@ -0,0 +1,69 @@
+# This workflow will build a Java project and deploy it to an Azure Functions App on Windows or Linux when a commit is pushed to your default branch.
+#
+# This workflow assumes you have already created the target Azure Functions app and applied azure functions plugin for gradle.
+# For instructions see https://learn.microsoft.com/en-us/azure/azure-functions/functions-create-first-java-gradle
+#
+# To configure this workflow:
+# 1. Set up the following secrets in your repository:
+# - AZURE_FUNCTIONAPP_PUBLISH_PROFILE
+# 2. Change env variables for your configuration.
+#
+# For more information on:
+# - GitHub Actions for Azure: https://github.com/Azure/Actions
+# - Azure Functions Action: https://github.com/Azure/functions-action
+# - Publish Profile: https://github.com/Azure/functions-action#using-publish-profile-as-deployment-credential-recommended
+# - Azure Service Principal for RBAC: https://github.com/Azure/functions-action#using-azure-service-principal-for-rbac-as-deployment-credential
+#
+# For more samples to get started with GitHub Action workflows to deploy to Azure: https://github.com/Azure/actions-workflow-samples/tree/master/FunctionApp
+
+name: Deploy Gradle Java project to Azure Function App
+
+on:
+ push:
+ branches: [$default-branch]
+
+permissions:
+ contents: read
+
+env:
+ AZURE_FUNCTIONAPP_NAME: 'your-app-name' # set this to your function app name on Azure
+ BUILD_GRADLE_DIRECTORY: '.' # set this to the directory which contains build.gradle file
+ JAVA_VERSION: '8' # set this to the java version to use (e.g. '8', '11', '17')
+
+jobs:
+ build-and-deploy:
+ permissions:
+ contents: none
+ runs-on: windows-latest # For Linux, use ubuntu-latest
+ environment: dev
+ steps:
+ - name: 'Checkout GitHub Action'
+ uses: actions/checkout@v3
+
+ # If you want to use Azure RBAC instead of Publish Profile, then uncomment the task below
+ # - name: 'Login via Azure CLI'
+ # uses: azure/login@v1
+ # with:
+ # creds: ${{ secrets.AZURE_RBAC_CREDENTIALS }} # set up AZURE_RBAC_CREDENTIALS secrets in your repository
+
+ - name: Setup Java Sdk ${{ env.JAVA_VERSION }}
+ uses: actions/setup-java@v1
+ with:
+ java-version: ${{ env.JAVA_VERSION }}
+
+ # Build function project with functions gradle plugin
+ # For project with function plugin lower than 1.12.1, please make sure you have set same app name in gradle configuration
+ - name: 'Restore Project Dependencies Using Gradle Plugin for Azure Functions'
+ shell: pwsh # For Linux, use bash
+ run: |
+ pushd './${{ env.BUILD_GRADLE_DIRECTORY }}'
+ gradle azureFunctionsPackage -DappName=${{ env.AZURE_FUNCTIONAPP_NAME }}
+ popd
+
+ - name: 'Run Azure Functions Action'
+ uses: Azure/functions-action@v1
+ id: fa
+ with:
+ app-name: ${{ env.AZURE_FUNCTIONAPP_NAME }}
+ package: '${{ env.BUILD_GRADLE_DIRECTORY }}/build/azure-functions/${{ env.AZURE_FUNCTIONAPP_NAME }}'
+ publish-profile: ${{ secrets.AZURE_FUNCTIONAPP_PUBLISH_PROFILE }} # Remove publish-profile to use Azure RBAC
diff --git a/deployments/azure-functions-app-java.yml b/deployments/azure-functions-app-java.yml
index 0774544..5608328 100644
--- a/deployments/azure-functions-app-java.yml
+++ b/deployments/azure-functions-app-java.yml
@@ -20,8 +20,7 @@ name: Deploy Java project to Azure Function App
on:
push:
- branches:
- - [$default-branch]
+ branches: [$default-branch]
env:
AZURE_FUNCTIONAPP_NAME: 'your-app-name' # set this to your function app name on Azure
diff --git a/deployments/azure-functions-app-nodejs.yml b/deployments/azure-functions-app-nodejs.yml
index b8033f0..916f396 100644
--- a/deployments/azure-functions-app-nodejs.yml
+++ b/deployments/azure-functions-app-nodejs.yml
@@ -22,8 +22,7 @@ name: Deploy Node.js project to Azure Function App
on:
push:
- branches:
- - [$default-branch]
+ branches: [$default-branch]
env:
AZURE_FUNCTIONAPP_NAME: 'your-app-name' # set this to your function app name on Azure
diff --git a/deployments/azure-functions-app-powershell.yml b/deployments/azure-functions-app-powershell.yml
index 505b5af..5d62316 100644
--- a/deployments/azure-functions-app-powershell.yml
+++ b/deployments/azure-functions-app-powershell.yml
@@ -20,8 +20,7 @@ name: Deploy PowerShell project to Azure Function App
on:
push:
- branches:
- - [$default-branch]
+ branches: [$default-branch]
env:
AZURE_FUNCTIONAPP_NAME: 'your-app-name' # set this to your function app name on Azure
diff --git a/deployments/azure-functions-app-python.yml b/deployments/azure-functions-app-python.yml
index 0220227..6452a18 100644
--- a/deployments/azure-functions-app-python.yml
+++ b/deployments/azure-functions-app-python.yml
@@ -20,8 +20,7 @@ name: Deploy Python project to Azure Function App
on:
push:
- branches:
- - [$default-branch]
+ branches: [$default-branch]
env:
AZURE_FUNCTIONAPP_NAME: 'your-app-name' # set this to your function app name on Azure
diff --git a/deployments/azure-webapps-php.yml b/deployments/azure-webapps-php.yml
index 4d08dbd..b3aee8d 100644
--- a/deployments/azure-webapps-php.yml
+++ b/deployments/azure-webapps-php.yml
@@ -54,7 +54,7 @@ jobs:
id: composer-cache
if: steps.check_files.outputs.files_exists == 'true'
run: |
- echo "::set-output name=dir::$(composer config cache-files-dir)"
+ echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT
- name: Set up dependency caching for faster installs
uses: actions/cache@v3
diff --git a/deployments/properties/azure-functions-app-java-gradle.properties.json b/deployments/properties/azure-functions-app-java-gradle.properties.json
new file mode 100644
index 0000000..5c3bd16
--- /dev/null
+++ b/deployments/properties/azure-functions-app-java-gradle.properties.json
@@ -0,0 +1,8 @@
+{
+ "name": "Deploy Gradle app to Azure Functions App",
+ "description": "Build a Java project and deploy it to an Azure Functions App on Windows or Linux.",
+ "creator": "Microsoft Azure",
+ "iconName": "azure",
+ "categories": ["Deployment", "Java", "Gradle", "Azure Functions"],
+ "labels": ["preview"]
+}
diff --git a/icons/code.svg b/icons/code.svg
new file mode 100644
index 0000000..ee64cbc
--- /dev/null
+++ b/icons/code.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/icons/endorlabs.svg b/icons/endorlabs.svg
new file mode 100644
index 0000000..04f1287
--- /dev/null
+++ b/icons/endorlabs.svg
@@ -0,0 +1,426 @@
+
\ No newline at end of file
diff --git a/icons/jscrambler.svg b/icons/jscrambler.svg
index 17f79b7..7b96427 100644
--- a/icons/jscrambler.svg
+++ b/icons/jscrambler.svg
@@ -1 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/icons/mdbook.svg b/icons/mdbook.svg
index 90e0ea5..c61e0a6 100644
--- a/icons/mdbook.svg
+++ b/icons/mdbook.svg
@@ -1,9 +1,4 @@
\ No newline at end of file
diff --git a/pages/astro.yml b/pages/astro.yml
index 1b6478f..ccbae47 100644
--- a/pages/astro.yml
+++ b/pages/astro.yml
@@ -18,10 +18,11 @@ permissions:
pages: write
id-token: write
-# Allow one concurrent deployment
+# 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: true
+ cancel-in-progress: false
env:
BUILD_PATH: "." # default value when not using subfolders
@@ -48,7 +49,7 @@ jobs:
echo "runner=npx --no-install" >> $GITHUB_OUTPUT
exit 0
else
- echo "Unable to determine packager manager"
+ echo "Unable to determine package manager"
exit 1
fi
- name: Setup Node
@@ -70,7 +71,7 @@ jobs:
--base "${{ steps.pages.outputs.base_path }}"
working-directory: ${{ env.BUILD_PATH }}
- name: Upload artifact
- uses: actions/upload-pages-artifact@v1
+ uses: actions/upload-pages-artifact@v2
with:
path: ${{ env.BUILD_PATH }}/dist
@@ -84,4 +85,4 @@ jobs:
steps:
- name: Deploy to GitHub Pages
id: deployment
- uses: actions/deploy-pages@v1
+ uses: actions/deploy-pages@v2
diff --git a/pages/gatsby.yml b/pages/gatsby.yml
index 34f15dd..676740b 100644
--- a/pages/gatsby.yml
+++ b/pages/gatsby.yml
@@ -18,10 +18,11 @@ permissions:
pages: write
id-token: write
-# Allow one concurrent deployment
+# 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: true
+ cancel-in-progress: false
# Default to bash
defaults:
@@ -47,7 +48,7 @@ jobs:
echo "command=ci" >> $GITHUB_OUTPUT
exit 0
else
- echo "Unable to determine packager manager"
+ echo "Unable to determine package manager"
exit 1
fi
- name: Setup Node
@@ -79,7 +80,7 @@ jobs:
PREFIX_PATHS: 'true'
run: ${{ steps.detect-package-manager.outputs.manager }} run build
- name: Upload artifact
- uses: actions/upload-pages-artifact@v1
+ uses: actions/upload-pages-artifact@v2
with:
path: ./public
@@ -93,4 +94,4 @@ jobs:
steps:
- name: Deploy to GitHub Pages
id: deployment
- uses: actions/deploy-pages@v1
+ uses: actions/deploy-pages@v2
diff --git a/pages/hugo.yml b/pages/hugo.yml
index d4363fd..b312295 100644
--- a/pages/hugo.yml
+++ b/pages/hugo.yml
@@ -15,10 +15,11 @@ permissions:
pages: write
id-token: write
-# Allow one concurrent deployment
+# 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: true
+ cancel-in-progress: false
# Default to bash
defaults:
@@ -30,14 +31,14 @@ jobs:
build:
runs-on: ubuntu-latest
env:
- HUGO_VERSION: 0.108.0
+ HUGO_VERSION: 0.114.0
steps:
- name: Install Hugo CLI
run: |
wget -O ${{ runner.temp }}/hugo.deb https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_extended_${HUGO_VERSION}_linux-amd64.deb \
&& sudo dpkg -i ${{ runner.temp }}/hugo.deb
- - name: Install Dart Sass Embedded
- run: sudo snap install dart-sass-embedded
+ - name: Install Dart Sass
+ run: sudo snap install dart-sass
- name: Checkout
uses: actions/checkout@v3
with:
@@ -57,7 +58,7 @@ jobs:
--minify \
--baseURL "${{ steps.pages.outputs.base_url }}/"
- name: Upload artifact
- uses: actions/upload-pages-artifact@v1
+ uses: actions/upload-pages-artifact@v2
with:
path: ./public
@@ -71,4 +72,4 @@ jobs:
steps:
- name: Deploy to GitHub Pages
id: deployment
- uses: actions/deploy-pages@v1
+ uses: actions/deploy-pages@v2
diff --git a/pages/jekyll-gh-pages.yml b/pages/jekyll-gh-pages.yml
index 792aa18..044e34c 100644
--- a/pages/jekyll-gh-pages.yml
+++ b/pages/jekyll-gh-pages.yml
@@ -15,10 +15,11 @@ permissions:
pages: write
id-token: write
-# Allow one concurrent deployment
+# 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: true
+ cancel-in-progress: false
jobs:
# Build job
@@ -35,7 +36,7 @@ jobs:
source: ./
destination: ./_site
- name: Upload artifact
- uses: actions/upload-pages-artifact@v1
+ uses: actions/upload-pages-artifact@v2
# Deployment job
deploy:
@@ -47,4 +48,4 @@ jobs:
steps:
- name: Deploy to GitHub Pages
id: deployment
- uses: actions/deploy-pages@v1
+ uses: actions/deploy-pages@v2
diff --git a/pages/jekyll.yml b/pages/jekyll.yml
index e8fff64..bd2f2e8 100644
--- a/pages/jekyll.yml
+++ b/pages/jekyll.yml
@@ -20,10 +20,11 @@ permissions:
pages: write
id-token: write
-# Allow one concurrent deployment
+# 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: true
+ cancel-in-progress: false
jobs:
# Build job
@@ -33,7 +34,7 @@ jobs:
- name: Checkout
uses: actions/checkout@v3
- name: Setup Ruby
- uses: ruby/setup-ruby@ee2113536afb7f793eed4ce60e8d3b26db912da4 # v1.127.0
+ uses: ruby/setup-ruby@55283cc23133118229fd3f97f9336ee23a179fcf # v1.146.0
with:
ruby-version: '3.1' # Not needed with a .ruby-version file
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
@@ -48,7 +49,7 @@ jobs:
JEKYLL_ENV: production
- name: Upload artifact
# Automatically uploads an artifact from the './_site' directory by default
- uses: actions/upload-pages-artifact@v1
+ uses: actions/upload-pages-artifact@v2
# Deployment job
deploy:
@@ -60,4 +61,4 @@ jobs:
steps:
- name: Deploy to GitHub Pages
id: deployment
- uses: actions/deploy-pages@v1
+ uses: actions/deploy-pages@v2
diff --git a/pages/mdbook.yml b/pages/mdbook.yml
index b4f0585..0fae7a4 100644
--- a/pages/mdbook.yml
+++ b/pages/mdbook.yml
@@ -18,38 +18,36 @@ permissions:
pages: write
id-token: write
-# Allow one concurrent deployment
+# 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: true
+ cancel-in-progress: false
+
jobs:
- # This workflow contains a single job called "build"
+ # Build job
build:
- env:
- MDBOOK_VERSION : 0.4.21
- # The type of runner that the job will run on
runs-on: ubuntu-latest
-
- # Steps represent a sequence of tasks that will be executed as part of the job
+ env:
+ MDBOOK_VERSION: 0.4.21
steps:
- # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v3
-
- # Runs a single command using the runners shell
- - name: install mdbook
+ - name: Install mdBook
run: |
curl --proto '=https' --tlsv1.2 https://sh.rustup.rs -sSf -y | sh
rustup update
cargo install --version ${MDBOOK_VERSION} mdbook
- name: Setup Pages
id: pages
- uses: actions/configure-pages@v1
- - name: Build with mdbook
+ uses: actions/configure-pages@v3
+ - name: Build with mdBook
run: mdbook build
- name: Upload artifact
- uses: actions/upload-pages-artifact@v1
+ uses: actions/upload-pages-artifact@v2
with:
path: ./book
+
+ # Deployment job
deploy:
environment:
name: github-pages
@@ -59,4 +57,4 @@ jobs:
steps:
- name: Deploy to GitHub Pages
id: deployment
- uses: actions/deploy-pages@v1
+ uses: actions/deploy-pages@v2
diff --git a/pages/nextjs.yml b/pages/nextjs.yml
index 5bd6c15..308b76e 100644
--- a/pages/nextjs.yml
+++ b/pages/nextjs.yml
@@ -18,10 +18,11 @@ permissions:
pages: write
id-token: write
-# Allow one concurrent deployment
+# 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: true
+ cancel-in-progress: false
jobs:
# Build job
@@ -44,7 +45,7 @@ jobs:
echo "runner=npx --no-install" >> $GITHUB_OUTPUT
exit 0
else
- echo "Unable to determine packager manager"
+ echo "Unable to determine package manager"
exit 1
fi
- name: Setup Node
@@ -77,7 +78,7 @@ jobs:
- name: Static HTML export with Next.js
run: ${{ steps.detect-package-manager.outputs.runner }} next export
- name: Upload artifact
- uses: actions/upload-pages-artifact@v1
+ uses: actions/upload-pages-artifact@v2
with:
path: ./out
@@ -91,4 +92,4 @@ jobs:
steps:
- name: Deploy to GitHub Pages
id: deployment
- uses: actions/deploy-pages@v1
+ uses: actions/deploy-pages@v2
diff --git a/pages/nuxtjs.yml b/pages/nuxtjs.yml
index e7d8891..2951136 100644
--- a/pages/nuxtjs.yml
+++ b/pages/nuxtjs.yml
@@ -18,10 +18,11 @@ permissions:
pages: write
id-token: write
-# Allow one concurrent deployment
+# 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: true
+ cancel-in-progress: false
jobs:
# Build job
@@ -42,7 +43,7 @@ jobs:
echo "command=ci" >> $GITHUB_OUTPUT
exit 0
else
- echo "Unable to determine packager manager"
+ echo "Unable to determine package manager"
exit 1
fi
- name: Setup Node
@@ -72,7 +73,7 @@ jobs:
- name: Static HTML export with Nuxt
run: ${{ steps.detect-package-manager.outputs.manager }} run generate
- name: Upload artifact
- uses: actions/upload-pages-artifact@v1
+ uses: actions/upload-pages-artifact@v2
with:
path: ./dist
@@ -86,4 +87,4 @@ jobs:
steps:
- name: Deploy to GitHub Pages
id: deployment
- uses: actions/deploy-pages@v1
+ uses: actions/deploy-pages@v2
diff --git a/pages/static.yml b/pages/static.yml
index d6b7192..31ac428 100644
--- a/pages/static.yml
+++ b/pages/static.yml
@@ -15,10 +15,11 @@ permissions:
pages: write
id-token: write
-# Allow one concurrent deployment
+# 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: true
+ cancel-in-progress: false
jobs:
# Single deploy job since we're just deploying
@@ -33,10 +34,10 @@ jobs:
- name: Setup Pages
uses: actions/configure-pages@v3
- name: Upload artifact
- uses: actions/upload-pages-artifact@v1
+ uses: actions/upload-pages-artifact@v2
with:
# Upload entire repository
path: '.'
- name: Deploy to GitHub Pages
id: deployment
- uses: actions/deploy-pages@v1
+ uses: actions/deploy-pages@v2