Compare commits

..
Author SHA1 Message Date
Andy McKay 6f203409c5 test 2019-11-01 13:54:52 -07:00
152 changed files with 786 additions and 3319 deletions
-1
View File
@@ -1 +0,0 @@
* text=auto
+7 -19
View File
@@ -1,31 +1,19 @@
Thank you for sending in this pull request. Please make sure you take a look at the [contributing file](https://github.com/actions/starter-workflows/blob/master/CONTRIBUTING.md). Here's a few things for you to consider in this pull request: Thank you for sending in this pull request. Please make sure you take a look at the [contributing file](CONTRIBUTING.md). Here's a few things for you to consider in this pull request:
- [ ] Include a good description of the workflow. - [ ] Include a good description of the workflow.
- [ ] Links to the language or tool will be nice (unless its really obvious) - [ ] Links to the language or tool will be nice (unless its really obvious)
In the workflow and properties files: In the workflow and properties files:
- [ ] The workflow filename of CI workflows should be the name of the language or platform, in lower case. Special characters should be removed or replaced with words as appropriate (for example, "dotnet" instead of ".NET").
The workflow filename of publishing workflows should be the name of the language or platform, in lower case, followed by "-publish".
- [ ] Includes a matching `ci/properties/*.properties.json` file. - [ ] Includes a matching `ci/properties/*.properties.json` file.
- [ ] Use sentence case for the names of workflows and steps, for example "Run tests". - [ ] Use title case for the names of workflows and steps, for example "Run tests".
- [ ] The name of CI workflows should only be the name of the language or platform: for example "Go" (not "Go CI" or "Go Build") - [ ] The name of CI workflows should only be the name of the language or platform: for example "Go" (not "Go CI" or "Go Build")
- [ ] Include comments in the workflow for any parts that are not obvious or could use clarification. - [ ] Include comments in the workflow for any parts that are not obvious or could use clarification.
- [ ] CI workflows should run on `push` to `branches: [ master ]` and `pull_request` to `branches: [ master ]`. - [ ] CI workflows should run `push`.
- [ ] Packaging workflows should run on `release` with `types: [created]`.
Packaging workflows should run on `release` with `types: [ created ]`.
Some general notes: Some general notes:
- [ ] This workflow must only use actions that are produced by GitHub, [in the `actions` organization](https://github.com/actions), **or** - [ ] Does not use an Action that isn't in the `actions` organization.
- [ ] Does not send data to any 3rd party service except for the purposes of installing dependencies.
This workflow must only use actions that are produced by the language or ecosystem that the workflow supports. These actions must be [published to the GitHub Marketplace](https://github.com/marketplace?type=actions). Workflows using these actions must reference the action using the full 40 character hash of the action's commit instead of a tag. Additionally, workflows must include the following comment at the top of the workflow file: - [ ] Does not use a paid service or product.
```
# 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.
```
- [ ] This workflow must not send data to any 3rd party service except for the purposes of installing dependencies.
- [ ] This workflow must not use a paid service or product.
-26
View File
@@ -1,26 +0,0 @@
on:
push:
branches:
- master
jobs:
sync:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- run: |
git fetch --no-tags --prune --depth=1 origin +refs/heads/*:refs/remotes/origin/*
git config user.email "[email protected]"
git config user.name "GitHub Actions"
- uses: actions/setup-node@v1
with:
node-version: '12'
- name: Check starter workflows for GHES compat
run: |
npm ci
npx ts-node-script ./index.ts
working-directory: ./script/sync-ghes
- run: |
git add -A
git commit -m "Updating GHES workflows"
- run: git push
-1
View File
@@ -1 +0,0 @@
script/**/node_modules
-21
View File
@@ -1,21 +0,0 @@
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Launch Program",
"args": ["${workspaceRoot}/script/index.ts"],
"runtimeArgs": ["-r", "ts-node/register"],
"cwd": "${workspaceRoot}/script",
"protocol": "inspector",
"internalConsoleOptions": "openOnSessionStart",
"env": {
"TS_NODE_IGNORE": "false"
}
}
]
}
+3 -4
View File
@@ -4,12 +4,11 @@
Hi there 👋 We are excited that you want to contribute a new workflow to this repo. By doing this you are helping people get up and running with GitHub Actions and that's cool 😎. Hi there 👋 We are excited that you want to contribute a new workflow to this repo. By doing this you are helping people get up and running with GitHub Actions and that's cool 😎.
Contributions to this project are [released](https://help.github.com/articles/github-terms-of-service/#6-contributions-under-repository-license) to the public under the [project's open source license](https://github.com/actions/starter-workflows/blob/master/LICENSE). Contributions to this project are [released](https://help.github.com/articles/github-terms-of-service/#6-contributions-under-repository-license) to the public under the [project's open source license](LICENSE.md).
Please note that this project is released with a [Contributor Code of Conduct]( Please note that this project is released with a [Contributor Code of Conduct][code-of-conduct]. By participating in this project you agree to abide by its terms.
https://github.com/actions/.github/blob/master/CODE_OF_CONDUCT.md). By participating in this project you agree to abide by its terms.
Before merging a new workflow, the following requirements need to be met: There are few requirements for adding in a new workflow, which we'll need to review before we merge:
- Should be as simple as is needed for the service. - Should be as simple as is needed for the service.
- There are many programming languages and tools out there. Right now we don't have a page that allows for a really large number of workflows, so we do have to be a little choosy about what we accept. Less popular tools or languages might not be accepted. - There are many programming languages and tools out there. Right now we don't have a page that allows for a really large number of workflows, so we do have to be a little choosy about what we accept. Less popular tools or languages might not be accepted.
+2 -4
View File
@@ -4,12 +4,10 @@
## Starter Workflows ## Starter Workflows
These are the workflow files for helping people get started with GitHub Actions. They're presented whenever you start to create a new GitHub Actions workflow.
**If you want to get started with GitHub Actions, you can use these starter workflows by clicking the "Actions" tab in the repository where you want to create a workflow.**
<img src="https://d3vv6lp55qjaqc.cloudfront.net/items/353A3p3Y2x3c2t2N0c01/Image%202019-08-27%20at%203.25.07%20PM.png" max-width="75%"/> <img src="https://d3vv6lp55qjaqc.cloudfront.net/items/353A3p3Y2x3c2t2N0c01/Image%202019-08-27%20at%203.25.07%20PM.png" max-width="75%"/>
These are the workflow files for helping people get started with GitHub Actions.
**Directory structure:** **Directory structure:**
* [ci](ci): solutions for Continuous Integration * [ci](ci): solutions for Continuous Integration
* [automation](automation): solutions for automating workflows. * [automation](automation): solutions for automating workflows.
+13
View File
@@ -0,0 +1,13 @@
name: Greetings
on: [pull_request, issues]
jobs:
greeting:
runs-on: ubuntu-latest
steps:
- uses: actions/first-interaction@v1
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
issue-message: 'Message that will be displayed on users'' first issue'
pr-message: 'Message that will be displayed on users'' first pr'
+19
View File
@@ -0,0 +1,19 @@
# This workflow will triage pull requests and apply a label based on the
# paths that are modified in the pull request.
#
# To use this workflow, you will need to set up a .github/labeler.yml
# file with configuration. For more information, see:
# https://github.com/actions/labeler/blob/master/README.md
name: Labeler
on: [pull_request]
jobs:
label:
runs-on: ubuntu-latest
steps:
- uses: actions/labeler@v2
with:
repo-token: "${{ secrets.GITHUB_TOKEN }}"
-32
View File
@@ -1,32 +0,0 @@
# This is a basic workflow that is manually triggered
name: Manual workflow
# Controls when the action will run. Workflow runs when manually triggered using the UI
# or API.
on:
workflow_dispatch:
# Inputs the workflow accepts.
inputs:
name:
# Friendly description to be shown in the UI instead of 'name'
description: 'Person to greet'
# Default value if no value is explicitly provided
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:
# This workflow contains a single job called "greet"
greet:
# 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
steps:
# Runs a single command using the runners shell
- name: Send greeting
run: echo "Hello ${{ inputs.name }}"
@@ -0,0 +1,6 @@
{
"name": "Greetings",
"description": "Greets users who are first time contributors to the repo",
"iconName": "octicon smiley",
"categories": ["Automation", "SDLC"]
}
@@ -0,0 +1,6 @@
{
"name": "Labeler",
"description": "Labels pull requests based on the files changed",
"iconName": "octicon tag",
"categories": ["Automation", "SDLC"]
}
@@ -1,6 +0,0 @@
{
"name": "Manual workflow",
"description": "Simple workflow that is manually triggered.",
"iconName": "octicon person",
"categories": ["Automation"]
}
+2 -10
View File
@@ -1,24 +1,16 @@
# This workflow warns and then closes issues and PRs that have had no activity for a specified amount of time.
#
# You can adjust the behavior by modifying this file.
# For more information, see:
# https://github.com/actions/stale
name: Mark stale issues and pull requests name: Mark stale issues and pull requests
on: on:
schedule: schedule:
- cron: $cron-daily - cron: "0 0 * * *"
jobs: jobs:
stale: stale:
runs-on: ubuntu-latest runs-on: ubuntu-latest
permissions:
issues: write
pull-requests: write
steps: steps:
- uses: actions/stale@v5 - uses: actions/stale@v1
with: with:
repo-token: ${{ secrets.GITHUB_TOKEN }} repo-token: ${{ secrets.GITHUB_TOKEN }}
stale-issue-message: 'Stale issue message' stale-issue-message: 'Stale issue message'
-24
View File
@@ -1,24 +0,0 @@
name: Ada (GNAT)
on:
push:
branches: [ $default-branch ]
pull_request:
branches: [ $default-branch ]
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set up GNAT toolchain
run: >
sudo apt-get update &&
sudo apt-get install gnat gprbuild
- name: Build
run: gprbuild -j0 -p
+17 -26
View File
@@ -1,26 +1,17 @@
name: Android CI name: Android CI
on: on: [push]
push:
branches: [ $default-branch ] jobs:
pull_request: build:
branches: [ $default-branch ]
runs-on: ubuntu-latest
jobs:
build: steps:
- uses: actions/checkout@v1
runs-on: ubuntu-latest - name: set up JDK 1.8
uses: actions/setup-java@v1
steps: with:
- uses: actions/checkout@v3 java-version: 1.8
- name: set up JDK 11 - name: Build with Gradle
uses: actions/setup-java@v3 run: ./gradlew build
with:
java-version: '11'
distribution: 'temurin'
cache: gradle
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Build with Gradle
run: ./gradlew build
+17 -25
View File
@@ -1,25 +1,17 @@
# This workflow will build a Java project with Ant name: Java CI
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-java-with-ant
on: [push]
name: Java CI
jobs:
on: build:
push:
branches: [ $default-branch ] runs-on: ubuntu-latest
pull_request:
branches: [ $default-branch ] steps:
- uses: actions/checkout@v1
jobs: - name: Set up JDK 1.8
build: uses: actions/setup-java@v1
with:
runs-on: ubuntu-latest java-version: 1.8
- name: Build with Ant
steps: run: ant -noinput -buildfile build.xml
- uses: actions/checkout@v3
- name: Set up JDK 11
uses: actions/setup-java@v3
with:
java-version: '11'
distribution: 'temurin'
- name: Build with Ant
run: ant -noinput -buildfile build.xml
+17 -36
View File
@@ -1,36 +1,17 @@
# This is a basic workflow to help you get started with Actions name: CI
name: CI on: [push]
# Controls when the workflow will run jobs:
on: build:
# Triggers the workflow on push or pull request events but only for the $default-branch branch
push: runs-on: ubuntu-latest
branches: [ $default-branch ]
pull_request: steps:
branches: [ $default-branch ] - uses: actions/checkout@v1
- name: Run a one-line script
# Allows you to run this workflow manually from the Actions tab run: echo Hello, world!
workflow_dispatch: - name: Run a multi-line script
run: |
# A workflow run is made up of one or more jobs that can run sequentially or in parallel echo Add other actions to build,
jobs: echo test, and deploy your project.
# This workflow contains a single job called "build"
build:
# 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
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: Run a one-line script
run: echo Hello, world!
# Runs a set of commands using the runners shell
- name: Run a multi-line script
run: |
echo Add other actions to build,
echo test, and deploy your project.
+19 -23
View File
@@ -1,23 +1,19 @@
name: C/C++ CI name: C/C++ CI
on: on: [push]
push:
branches: [ $default-branch ] jobs:
pull_request: build:
branches: [ $default-branch ]
runs-on: ubuntu-latest
jobs:
build: steps:
- uses: actions/checkout@v1
runs-on: ubuntu-latest - name: configure
run: ./configure
steps: - name: make
- uses: actions/checkout@v3 run: make
- name: configure - name: make check
run: ./configure run: make check
- name: make - name: make distcheck
run: make run: make distcheck
- name: make check
run: make check
- name: make distcheck
run: make distcheck
+15 -19
View File
@@ -1,19 +1,15 @@
name: Clojure CI name: Clojure CI
on: on: [push]
push:
branches: [ $default-branch ] jobs:
pull_request: build:
branches: [ $default-branch ]
runs-on: ubuntu-latest
jobs:
build: steps:
- uses: actions/checkout@v1
runs-on: ubuntu-latest - name: Install dependencies
run: lein deps
steps: - name: Run tests
- uses: actions/checkout@v3 run: lein test
- name: Install dependencies
run: lein deps
- name: Run tests
run: lein test
-75
View File
@@ -1,75 +0,0 @@
# This starter workflow is for a CMake project running on multiple platforms. There is a different starter workflow if you just want a single platform.
# See: https://github.com/actions/starter-workflows/blob/main/ci/cmake-single-platform.yml
name: CMake on multiple platforms
on:
push:
branches: [ $default-branch ]
pull_request:
branches: [ $default-branch ]
jobs:
build:
runs-on: ${{ matrix.os }}
strategy:
# Set fail-fast to false to ensure that feedback is delivered for all matrix combinations. Consider changing this to true when your workflow is stable.
fail-fast: false
# Set up a matrix to run the following 3 configurations:
# 1. <Windows, Release, latest MSVC compiler toolchain on the default runner image, default generator>
# 2. <Linux, Release, latest GCC compiler toolchain on the default runner image, default generator>
# 3. <Linux, Release, latest Clang compiler toolchain on the default runner image, default generator>
#
# To add more build types (Release, Debug, RelWithDebInfo, etc.) customize the build_type list.
matrix:
os: [ubuntu-latest, windows-latest]
build_type: [Release]
c_compiler: [gcc, clang, cl]
include:
- os: windows-latest
c_compiler: cl
cpp_compiler: cl
- os: ubuntu-latest
c_compiler: gcc
cpp_compiler: g++
- os: ubuntu-latest
c_compiler: clang
cpp_compiler: clang++
exclude:
- os: windows-latest
c_compiler: gcc
- os: windows-latest
c_compiler: clang
- os: ubuntu-latest
c_compiler: cl
steps:
- uses: actions/checkout@v3
- name: Set reusable strings
# Turn repeated input strings (such as the build output directory) into step outputs. These step outputs can be used throughout the workflow file.
id: strings
shell: bash
run: |
echo "build-output-dir=${{ github.workspace }}/build" >> "$GITHUB_OUTPUT"
- name: Configure CMake
# Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make.
# See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type
run: >
cmake -B ${{ steps.strings.outputs.build-output-dir }}
-DCMAKE_CXX_COMPILER=${{ matrix.cpp_compiler }}
-DCMAKE_C_COMPILER=${{ matrix.c_compiler }}
-DCMAKE_BUILD_TYPE=${{ matrix.build_type }}
-S ${{ github.workspace }}
- name: Build
# Build your program with the given configuration. Note that --config is needed because the default Windows generator is a multi-config generator (Visual Studio generator).
run: cmake --build ${{ steps.strings.outputs.build-output-dir }} --config ${{ matrix.build_type }}
- name: Test
working-directory: ${{ steps.strings.outputs.build-output-dir }}
# Execute tests defined by the CMake configuration. Note that --build-config is needed because the default Windows generator is a multi-config generator (Visual Studio generator).
# See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail
run: ctest --build-config ${{ matrix.build_type }}
-39
View File
@@ -1,39 +0,0 @@
# This starter workflow is for a CMake project running on a single platform. There is a different starter workflow if you need cross-platform coverage.
# See: https://github.com/actions/starter-workflows/blob/main/ci/cmake-multi-platform.yml
name: CMake on a single platform
on:
push:
branches: [ $default-branch ]
pull_request:
branches: [ $default-branch ]
env:
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
BUILD_TYPE: Release
jobs:
build:
# The CMake configure and build commands are platform agnostic and should work equally well on Windows or Mac.
# You can convert this to a matrix build if you need cross-platform coverage.
# See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Configure CMake
# Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make.
# See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type
run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}}
- name: Build
# Build your program with the given configuration
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}}
- name: Test
working-directory: ${{github.workspace}}/build
# Execute tests defined by the CMake configuration.
# See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail
run: ctest -C ${{env.BUILD_TYPE}}
+18 -22
View File
@@ -1,22 +1,18 @@
name: Crystal CI name: Crystal CI
on: on: [push]
push:
branches: [ $default-branch ] jobs:
pull_request: build:
branches: [ $default-branch ]
runs-on: ubuntu-latest
jobs:
build: container:
image: crystallang/crystal
runs-on: ubuntu-latest
steps:
container: - uses: actions/checkout@v1
image: crystallang/crystal - name: Install dependencies
run: shards install
steps: - name: Run tests
- uses: actions/checkout@v3 run: crystal spec
- name: Install dependencies
run: shards install
- name: Run tests
run: crystal spec
+18
View File
@@ -0,0 +1,18 @@
name: Dart CI
on: [push]
jobs:
build:
runs-on: ubuntu-latest
container:
image: google/dart:latest
steps:
- uses: actions/checkout@v1
- name: Install dependencies
run: pub get
- name: Run tests
run: pub run test
-30
View File
@@ -1,30 +0,0 @@
name: Django CI
on:
push:
branches: [ $default-branch ]
pull_request:
branches: [ $default-branch ]
jobs:
build:
runs-on: ubuntu-latest
strategy:
max-parallel: 4
matrix:
python-version: [3.7, 3.8, 3.9]
steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v3
with:
python-version: ${{ matrix.python-version }}
- name: Install Dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
- name: Run Tests
run: |
python manage.py test
+14 -18
View File
@@ -1,18 +1,14 @@
name: Docker Image CI name: Docker Image CI
on: on: [push]
push:
branches: [ $default-branch ] jobs:
pull_request:
branches: [ $default-branch ] build:
jobs: runs-on: ubuntu-latest
build: steps:
- uses: actions/checkout@v1
runs-on: ubuntu-latest - name: Build the Docker image
run: docker build . --file Dockerfile --tag my-image-name:$(date +%s)
steps:
- uses: actions/checkout@v3
- name: Build the Docker image
run: docker build . --file Dockerfile --tag my-image-name:$(date +%s)
+17
View File
@@ -0,0 +1,17 @@
name: .NET Core
on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Setup .NET Core
uses: actions/setup-dotnet@v1
with:
dotnet-version: 2.2.108
- name: Build with dotnet
run: dotnet build --configuration Release
-28
View File
@@ -1,28 +0,0 @@
# This workflow will build a .NET project
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-net
name: .NET
on:
push:
branches: [ $default-branch ]
pull_request:
branches: [ $default-branch ]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: 8.0.x
- name: Restore dependencies
run: dotnet restore
- name: Build
run: dotnet build --no-restore
- name: Test
run: dotnet test --no-build --verbosity normal
+21
View File
@@ -0,0 +1,21 @@
name: Elixir CI
on: push
jobs:
build:
runs-on: ubuntu-latest
container:
image: elixir:1.9.1-slim
steps:
- uses: actions/checkout@v1
- name: Install Dependencies
run: |
mix local.rebar --force
mix local.hex --force
mix deps.get
- name: Run Tests
run: mix test
+19 -26
View File
@@ -1,26 +1,19 @@
name: Erlang CI name: Erlang CI
on: on: [push]
push:
branches: [ $default-branch ] jobs:
pull_request:
branches: [ $default-branch ] build:
permissions: runs-on: ubuntu-latest
contents: read
container:
jobs: image: erlang:22.0.7
build: steps:
- uses: actions/checkout@v1
runs-on: ubuntu-latest - name: Compile
run: rebar3 compile
container: - name: Run tests
image: erlang:22.0.7 run: rebar3 do eunit, ct
steps:
- uses: actions/checkout@v3
- name: Compile
run: rebar3 compile
- name: Run tests
run: rebar3 do eunit, ct
+44
View File
@@ -0,0 +1,44 @@
name: Ruby Gem
on:
pull_request:
branches:
- master
push:
branches:
- master
jobs:
build:
name: Build + Publish
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@master
- name: Set up Ruby 2.6
uses: actions/setup-ruby@v1
with:
version: 2.6.x
- name: Publish to GPR
run: |
mkdir -p $HOME/.gem
touch $HOME/.gem/credentials
chmod 0600 $HOME/.gem/credentials
printf -- "---\n:github: Bearer ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials
gem build *.gemspec
gem push --KEY github --host https://rubygems.pkg.github.com/${OWNER} *.gem
env:
GEM_HOST_API_KEY: ${{secrets.GPR_AUTH_TOKEN}}
OWNER: username
- name: Publish to RubyGems
run: |
mkdir -p $HOME/.gem
touch $HOME/.gem/credentials
chmod 0600 $HOME/.gem/credentials
printf -- "---\n:rubygems_api_key: ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials
gem build *.gemspec
gem push *.gem
env:
GEM_HOST_API_KEY: ${{secrets.RUBYGEMS_AUTH_TOKEN}}
@@ -1,66 +0,0 @@
# 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.
# This workflow lets you generate SLSA provenance file for your project.
# The generation satisfies level 3 for the provenance requirements - see https://slsa.dev/spec/v0.1/requirements
# The project is an initiative of the OpenSSF (openssf.org) and is developed at
# https://github.com/slsa-framework/slsa-github-generator.
# The provenance file can be verified using https://github.com/slsa-framework/slsa-verifier.
# For more information about SLSA and how it improves the supply-chain, visit slsa.dev.
name: SLSA generic generator
on:
workflow_dispatch:
release:
types: [created]
jobs:
build:
runs-on: ubuntu-latest
outputs:
digests: ${{ steps.hash.outputs.digests }}
steps:
- uses: actions/checkout@v3
# ========================================================
#
# Step 1: Build your artifacts.
#
# ========================================================
- name: Build artifacts
run: |
# These are some amazing artifacts.
echo "artifact1" > artifact1
echo "artifact2" > artifact2
# ========================================================
#
# Step 2: Add a step to generate the provenance subjects
# as shown below. Update the sha256 sum arguments
# to include all binaries that you generate
# provenance for.
#
# ========================================================
- name: Generate subject for provenance
id: hash
run: |
set -euo pipefail
# List the artifacts the provenance will refer to.
files=$(ls artifact*)
# Generate the subjects (base64 encoded).
echo "hashes=$(sha256sum $files | base64 -w0)" >> "${GITHUB_OUTPUT}"
provenance:
needs: [build]
permissions:
actions: read # To read the workflow path.
id-token: write # To sign the provenance.
contents: write # To add assets to a release.
uses: slsa-framework/slsa-github-generator/.github/workflows/[email protected]
with:
base64-subjects: "${{ needs.build.outputs.digests }}"
upload-assets: true # Optional: Upload to a new release
-38
View File
@@ -1,38 +0,0 @@
# 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.
# This workflow lets you compile your Go project using a SLSA3 compliant builder.
# This workflow will generate a so-called "provenance" file describing the steps
# that were performed to generate the final binary.
# The project is an initiative of the OpenSSF (openssf.org) and is developed at
# https://github.com/slsa-framework/slsa-github-generator.
# The provenance file can be verified using https://github.com/slsa-framework/slsa-verifier.
# For more information about SLSA and how it improves the supply-chain, visit slsa.dev.
name: SLSA Go releaser
on:
workflow_dispatch:
release:
types: [created]
permissions: read-all
jobs:
# ========================================================================================================================================
# Prerequesite: Create a .slsa-goreleaser.yml in the root directory of your project.
# See format in https://github.com/slsa-framework/slsa-github-generator/blob/main/internal/builders/go/README.md#configuration-file
#=========================================================================================================================================
build:
permissions:
id-token: write # To sign.
contents: write # To upload release assets.
actions: read # To read workflow path.
uses: slsa-framework/slsa-github-generator/.github/workflows/[email protected]
with:
go-version: 1.17
# =============================================================================================================
# Optional: For more options, see https://github.com/slsa-framework/slsa-github-generator#golang-projects
# =============================================================================================================
+28 -28
View File
@@ -1,28 +1,28 @@
# This workflow will build a golang project name: Go
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-go on: [push]
jobs:
name: Go
build:
on: name: Build
push: runs-on: ubuntu-latest
branches: [ $default-branch ] steps:
pull_request:
branches: [ $default-branch ] - name: Set up Go 1.13
uses: actions/setup-go@v1
jobs: with:
go-version: 1.13
build: id: go
runs-on: ubuntu-latest
steps: - name: Check out code into the Go module directory
- uses: actions/checkout@v3 uses: actions/checkout@v1
- name: Set up Go - name: Get dependencies
uses: actions/setup-go@v4 run: |
with: go get -v -t -d ./...
go-version: '1.20' if [ -f Gopkg.toml ]; then
curl https://raw.githubusercontent.com/golang/dep/master/install.sh | sh
- name: Build dep ensure
run: go build -v ./... fi
- name: Test - name: Build
run: go test -v ./... run: go build -v .
+17
View File
@@ -0,0 +1,17 @@
name: Java CI
on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Set up JDK 1.8
uses: actions/setup-java@v1
with:
java-version: 1.8
- name: Build with Gradle
run: ./gradlew build
+25
View File
@@ -0,0 +1,25 @@
name: Haskell CI
on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- uses: actions/setup-haskell@v1
with:
ghc-version: '8.6.5'
cabal-version: '3.0'
- name: Install dependencies
run: |
cabal update
cabal install --only-dependencies --enable-tests
- name: Build
run: |
cabal configure --enable-tests
cabal build
- name: Run tests
run: cabal test
-44
View File
@@ -1,44 +0,0 @@
name: iOS starter workflow
on:
push:
branches: [ $default-branch ]
pull_request:
branches: [ $default-branch ]
jobs:
build:
name: Build and Test default scheme using any available iPhone simulator
runs-on: macos-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set Default Scheme
run: |
scheme_list=$(xcodebuild -list -json | tr -d "\n")
default=$(echo $scheme_list | ruby -e "require 'json'; puts JSON.parse(STDIN.gets)['project']['targets'][0]")
echo $default | cat >default
echo Using default scheme: $default
- name: Build
env:
scheme: ${{ 'default' }}
platform: ${{ 'iOS Simulator' }}
run: |
# xcrun xctrace returns via stderr, not the expected stdout (see https://developer.apple.com/forums/thread/663959)
device=`xcrun xctrace list devices 2>&1 | grep -oE 'iPhone.*?[^\(]+' | head -1 | awk '{$1=$1;print}' | sed -e "s/ Simulator$//"`
if [ $scheme = default ]; then scheme=$(cat default); fi
if [ "`ls -A | grep -i \\.xcworkspace\$`" ]; then filetype_parameter="workspace" && file_to_build="`ls -A | grep -i \\.xcworkspace\$`"; else filetype_parameter="project" && file_to_build="`ls -A | grep -i \\.xcodeproj\$`"; fi
file_to_build=`echo $file_to_build | awk '{$1=$1;print}'`
xcodebuild build-for-testing -scheme "$scheme" -"$filetype_parameter" "$file_to_build" -destination "platform=$platform,name=$device"
- name: Test
env:
scheme: ${{ 'default' }}
platform: ${{ 'iOS Simulator' }}
run: |
# xcrun xctrace returns via stderr, not the expected stdout (see https://developer.apple.com/forums/thread/663959)
device=`xcrun xctrace list devices 2>&1 | grep -oE 'iPhone.*?[^\(]+' | head -1 | awk '{$1=$1;print}' | sed -e "s/ Simulator$//"`
if [ $scheme = default ]; then scheme=$(cat default); fi
if [ "`ls -A | grep -i \\.xcworkspace\$`" ]; then filetype_parameter="workspace" && file_to_build="`ls -A | grep -i \\.xcworkspace\$`"; else filetype_parameter="project" && file_to_build="`ls -A | grep -i \\.xcodeproj\$`"; fi
file_to_build=`echo $file_to_build | awk '{$1=$1;print}'`
xcodebuild test-without-building -scheme "$scheme" -"$filetype_parameter" "$file_to_build" -destination "platform=$platform,name=$device"
+16 -20
View File
@@ -1,20 +1,16 @@
name: Jekyll site CI name: Jekyll site CI
on: on: [push]
push:
branches: [ $default-branch ] jobs:
pull_request: build:
branches: [ $default-branch ]
runs-on: ubuntu-latest
jobs:
build: steps:
- uses: actions/checkout@v1
runs-on: ubuntu-latest - name: Build the site in the jekyll/builder container
run: |
steps: docker run \
- uses: actions/checkout@v3 -v ${{ github.workspace }}:/srv/jekyll -v ${{ github.workspace }}/_site:/srv/jekyll/_site \
- name: Build the site in the jekyll/builder container jekyll/builder:latest /bin/bash -c "chmod 777 /srv/jekyll && jekyll build --future"
run: |
docker run \
-v ${{ github.workspace }}:/srv/jekyll -v ${{ github.workspace }}/_site:/srv/jekyll/_site \
jekyll/builder:latest /bin/bash -c "chmod -R 777 /srv/jekyll && jekyll build --future"
+24
View File
@@ -0,0 +1,24 @@
name: Laravel
on: [push]
jobs:
laravel-tests:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Copy .env
run: php -r "file_exists('.env') || copy('.env.example', '.env');"
- name: Install Dependencies
run: composer install -q --no-ansi --no-interaction --no-scripts --no-suggest --no-progress --prefer-dist
- name: Generate key
run: php artisan key:generate
- name: Create Database
run: |
mkdir -p database
touch database/database.sqlite
- name: Execute tests (Unit and Feature tests) via PHPUnit
env:
DB_CONNECTION: sqlite
DB_DATABASE: database/database.sqlite
run: vendor/bin/phpunit
-27
View File
@@ -1,27 +0,0 @@
name: Makefile CI
on:
push:
branches: [ $default-branch ]
pull_request:
branches: [ $default-branch ]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: configure
run: ./configure
- name: Install dependencies
run: make
- name: Run check
run: make check
- name: Run distcheck
run: make distcheck
-34
View File
@@ -1,34 +0,0 @@
# This workflow will build a package using Maven and then publish it to GitHub packages when a release is created
# For more information see: https://github.com/actions/setup-java/blob/main/docs/advanced-usage.md#apache-maven-with-a-settings-path
name: Maven Package
on:
release:
types: [created]
jobs:
build:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- uses: actions/checkout@v3
- name: Set up JDK 11
uses: actions/setup-java@v3
with:
java-version: '11'
distribution: 'temurin'
server-id: github # Value of the distributionManagement/repository/id field of the pom.xml
settings-path: ${{ github.workspace }} # location for the settings.xml file
- name: Build with Maven
run: mvn -B package --file pom.xml
- name: Publish to GitHub Packages Apache Maven
run: mvn deploy -s $GITHUB_WORKSPACE/settings.xml
env:
GITHUB_TOKEN: ${{ github.token }}
+17
View File
@@ -0,0 +1,17 @@
name: Java CI
on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Set up JDK 1.8
uses: actions/setup-java@v1
with:
java-version: 1.8
- name: Build with Maven
run: mvn -B package --file pom.xml
+26 -31
View File
@@ -1,31 +1,26 @@
# This workflow will do a clean installation of node dependencies, cache/restore them, build the source code and run tests across different versions of node name: Node CI
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-nodejs
on: [push]
name: Node.js CI
jobs:
on: build:
push:
branches: [ $default-branch ] runs-on: ubuntu-latest
pull_request:
branches: [ $default-branch ] strategy:
matrix:
jobs: node-version: [8.x, 10.x, 12.x]
build:
steps:
runs-on: ubuntu-latest - uses: actions/checkout@v1
- name: Use Node.js ${{ matrix.node-version }}
strategy: uses: actions/setup-node@v1
matrix: with:
node-version: [14.x, 16.x, 18.x] node-version: ${{ matrix.node-version }}
# See supported Node.js release schedule at https://nodejs.org/en/about/releases/ - name: npm install, build, and test
run: |
steps: npm ci
- uses: actions/checkout@v3 npm run build --if-present
- name: Use Node.js ${{ matrix.node-version }} npm test
uses: actions/setup-node@v3 env:
with: CI: true
node-version: ${{ matrix.node-version }}
cache: 'npm'
- run: npm ci
- run: npm run build --if-present
- run: npm test
-28
View File
@@ -1,28 +0,0 @@
name: NodeJS with Grunt
on:
push:
branches: [ $default-branch ]
pull_request:
branches: [ $default-branch ]
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [14.x, 16.x, 18.x]
steps:
- uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- name: Build
run: |
npm install
grunt
-28
View File
@@ -1,28 +0,0 @@
name: NodeJS with Gulp
on:
push:
branches: [ $default-branch ]
pull_request:
branches: [ $default-branch ]
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [14.x, 16.x, 18.x]
steps:
- uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- name: Build
run: |
npm install
gulp
-36
View File
@@ -1,36 +0,0 @@
# This workflow will run tests using node and then publish a package to GitHub Packages when a release is created
# For more information see: https://docs.github.com/en/actions/publishing-packages/publishing-nodejs-packages
name: Node.js Package
on:
release:
types: [created]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 16
- run: npm ci
- run: npm test
publish-gpr:
needs: build
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 16
registry-url: $registry-url(npm)
- run: npm ci
- run: npm publish
env:
NODE_AUTH_TOKEN: ${{secrets.GITHUB_TOKEN}}
+21 -9
View File
@@ -1,6 +1,3 @@
# This workflow will run tests using node and then publish a package to GitHub Packages when a release is created
# For more information see: https://docs.github.com/en/actions/publishing-packages/publishing-nodejs-packages
name: Node.js Package name: Node.js Package
on: on:
@@ -11,10 +8,10 @@ jobs:
build: build:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v1
- uses: actions/setup-node@v3 - uses: actions/setup-node@v1
with: with:
node-version: 16 node-version: 12
- run: npm ci - run: npm ci
- run: npm test - run: npm test
@@ -22,12 +19,27 @@ jobs:
needs: build needs: build
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v1
- uses: actions/setup-node@v3 - uses: actions/setup-node@v1
with: with:
node-version: 16 node-version: 12
registry-url: https://registry.npmjs.org/ registry-url: https://registry.npmjs.org/
- run: npm ci - run: npm ci
- run: npm publish - run: npm publish
env: env:
NODE_AUTH_TOKEN: ${{secrets.npm_token}} NODE_AUTH_TOKEN: ${{secrets.npm_token}}
publish-gpr:
needs: build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- uses: actions/setup-node@v1
with:
node-version: 12
registry-url: https://npm.pkg.github.com/
scope: '@your-github-username'
- run: npm ci
- run: npm publish
env:
NODE_AUTH_TOKEN: ${{secrets.GITHUB_TOKEN}}
-30
View File
@@ -1,30 +0,0 @@
name: Xcode - Build and Analyze
on:
push:
branches: [ $default-branch ]
pull_request:
branches: [ $default-branch ]
jobs:
build:
name: Build and analyse default scheme using xcodebuild command
runs-on: macos-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set Default Scheme
run: |
scheme_list=$(xcodebuild -list -json | tr -d "\n")
default=$(echo $scheme_list | ruby -e "require 'json'; puts JSON.parse(STDIN.gets)['project']['targets'][0]")
echo $default | cat >default
echo Using default scheme: $default
- name: Build
env:
scheme: ${{ 'default' }}
run: |
if [ $scheme = default ]; then scheme=$(cat default); fi
if [ "`ls -A | grep -i \\.xcworkspace\$`" ]; then filetype_parameter="workspace" && file_to_build="`ls -A | grep -i \\.xcworkspace\$`"; else filetype_parameter="project" && file_to_build="`ls -A | grep -i \\.xcodeproj\$`"; fi
file_to_build=`echo $file_to_build | awk '{$1=$1;print}'`
xcodebuild clean build analyze -scheme "$scheme" -"$filetype_parameter" "$file_to_build" | xcpretty && exit ${PIPESTATUS[0]}
+4 -20
View File
@@ -1,13 +1,6 @@
name: PHP Composer name: PHP Composer
on: on: [push]
push:
branches: [ $default-branch ]
pull_request:
branches: [ $default-branch ]
permissions:
contents: read
jobs: jobs:
build: build:
@@ -15,22 +8,13 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v1
- name: Validate composer.json and composer.lock - name: Validate composer.json and composer.lock
run: composer validate --strict run: composer validate
- name: Cache Composer packages
id: composer-cache
uses: actions/cache@v3
with:
path: vendor
key: ${{ runner.os }}-php-${{ hashFiles('**/composer.lock') }}
restore-keys: |
${{ runner.os }}-php-
- name: Install dependencies - name: Install dependencies
run: composer install --prefer-dist --no-progress run: composer install --prefer-dist --no-progress --no-suggest
# Add a test script to composer.json, for instance: "test": "vendor/bin/phpunit" # Add a test script to composer.json, for instance: "test": "vendor/bin/phpunit"
# Docs: https://getcomposer.org/doc/articles/scripts.md # Docs: https://getcomposer.org/doc/articles/scripts.md
-6
View File
@@ -1,6 +0,0 @@
{
"name": "Ada",
"description": "Build Ada project with GPRbuild.",
"iconName": "ada",
"categories": ["Continuous integration", "Ada"]
}
+6 -6
View File
@@ -1,6 +1,6 @@
{ {
"name": "Android CI", "name": "Android CI",
"description": "Build an Android project with Gradle.", "description": "Build an Android project with Gradle.",
"iconName": "android", "iconName": "android",
"categories": ["Continuous integration", "Java", "Mobile"] "categories": ["Java", "Mobile"]
} }
+6 -6
View File
@@ -1,6 +1,6 @@
{ {
"name": "Java with Ant", "name": "Java with Ant",
"description": "Build and test a Java project with Apache Ant.", "description": "Build and test a Java project with Apache Ant.",
"iconName": "ant", "iconName": "ant",
"categories": ["Continuous integration", "Ant", "Java"] "categories": ["Ant", "Java"]
} }
+6 -7
View File
@@ -1,7 +1,6 @@
{ {
"name": "Simple workflow", "name": "Simple workflow",
"description": "Start with a file with the minimum necessary structure.", "description": "Start with a file with the minimum necessary structure.",
"creator": "GitHub", "iconName": "blank",
"iconName": "blank", "categories": null
"categories": null }
}
+6 -6
View File
@@ -1,6 +1,6 @@
{ {
"name": "C/C++ with Make", "name": "C/C++ with Make",
"description": "Build and test a C/C++ project using Make.", "description": "Build and test a C/C++ project using Make.",
"iconName": "c-cpp", "iconName": "c-cpp",
"categories": ["Continuous integration", "C", "C++"] "categories": ["C", "C++"]
} }
+6 -6
View File
@@ -1,6 +1,6 @@
{ {
"name": "Clojure", "name": "Clojure",
"description": "Build and test a Clojure project with Leiningen.", "description": "Build and test a Clojure project with Leiningen.",
"iconName": "clojure", "iconName": "clojure",
"categories": ["Continuous integration", "Clojure", "Java"] "categories": ["Clojure", "Java"]
} }
@@ -1,6 +0,0 @@
{
"name": "CMake based, multi-platform projects",
"description": "Build and test a CMake based project on multiple platforms.",
"iconName": "cmake",
"categories": ["Continuous integration", "C", "C++"]
}
@@ -1,6 +0,0 @@
{
"name": "CMake based, single-platform projects",
"description": "Build and test a CMake based project on a single-platform.",
"iconName": "cmake",
"categories": ["Continuous integration", "C", "C++"]
}
+6 -6
View File
@@ -1,6 +1,6 @@
{ {
"name": "Crystal", "name": "Crystal",
"description": "Build and test a Crystal project.", "description": "Build and test a Crystal project.",
"iconName": "crystal", "iconName": "crystal",
"categories": ["Continuous integration", "Crystal"] "categories": ["Crystal"]
} }
+6
View File
@@ -0,0 +1,6 @@
{
"name": "Dart",
"description": "Build and test a Dart project with Pub.",
"iconName": "dart",
"categories": ["Dart"]
}
-6
View File
@@ -1,6 +0,0 @@
{
"name": "Django",
"description": "Build and Test a Django Project",
"iconName": "django",
"categories": ["Continuous integration", "Python", "Django"]
}
+6 -6
View File
@@ -1,6 +1,6 @@
{ {
"name": "Docker image", "name": "Docker image",
"description": "Build a Docker image to deploy, run, or push to a registry.", "description": "Build a Docker image to deploy, run, or push to a registry.",
"iconName": "docker", "iconName": "docker",
"categories": ["Continuous integration", "Dockerfile"] "categories": ["Dockerfile"]
} }
@@ -0,0 +1,6 @@
{
"name": ".NET Core",
"description": "Build and test a .NET Core or ASP.NET Core project.",
"iconName": "dotnetcore",
"categories": ["C#", "F#", "Visual Basic", "ASP", "ASP.NET", ".NET"]
}
-6
View File
@@ -1,6 +0,0 @@
{
"name": ".NET",
"description": "Build and test a .NET or ASP.NET Core project.",
"iconName": "dotnet",
"categories": ["Continuous integration", "C#", "F#", "Visual Basic", "ASP", "ASP.NET", ".NET", "AspNetCore", "DotNetConsole"]
}
+6
View File
@@ -0,0 +1,6 @@
{
"name": "Elixir",
"description": "Build and test an Elixir project with Mix.",
"iconName": "elixir",
"categories": ["Elixir", "Erlang"]
}
+6 -6
View File
@@ -1,6 +1,6 @@
{ {
"name": "Erlang", "name": "Erlang",
"description": "Build and test an Erlang project with rebar.", "description": "Build and test an Erlang project with rebar.",
"iconName": "erlang", "iconName": "erlang",
"categories": ["Continuous integration", "Erlang"] "categories": ["Erlang"]
} }
+6
View File
@@ -0,0 +1,6 @@
{
"name": "Ruby Gem",
"description": "Pushes a Ruby Gem to RubyGems and GitHub Package Registry.",
"iconName": "ruby-gems",
"categories": ["Ruby", "SDLC"]
}
@@ -1,7 +0,0 @@
{
"name": "SLSA Generic generator",
"creator": "Open Source Security Foundation (OpenSSF)",
"description": "Generate SLSA3 provenance for your existing release workflows",
"iconName": "generator-generic-ossf-slsa3-publish",
"categories": ["Continuous integration", "Go", "Elixir", "Erlang", "PHP", "Haskell", "Rust", "Java", "Scala", "Gradle", "Maven", "Python", "C", "C++", "TypeScript", "JavaScript", "npm", "Ruby", "HTML", "Composer", "Makefile", "Ada"]
}
@@ -1,7 +0,0 @@
{
"name": "SLSA Go releaser",
"creator": "Open Source Security Foundation (OpenSSF)",
"description": "Compile your Go project using a SLSA3 compliant builder",
"iconName": "go-ossf-slsa3-publish",
"categories": ["Continuous integration", "Go"]
}
+6 -6
View File
@@ -1,6 +1,6 @@
{ {
"name": "Go", "name": "Go",
"description": "Build a Go project.", "description": "Build a Go project.",
"iconName": "go", "iconName": "go",
"categories": ["Continuous integration", "Go"] "categories": ["Go"]
} }
+6
View File
@@ -0,0 +1,6 @@
{
"name": "Gradle",
"description": "Build and test a Java project using a Gradle wrapper script.",
"iconName": "gradle",
"categories": ["Java", "Gradle"]
}
+6
View File
@@ -0,0 +1,6 @@
{
"name": "Haskell",
"description": "Build and test a Haskell project with Cabal.",
"iconName": "haskell",
"categories": ["Haskell"]
}
-10
View File
@@ -1,10 +0,0 @@
{
"name": "iOS",
"description": "Build and test an iOS application using xcodebuild and any available iPhone simulator.",
"iconName": "xcode",
"categories": [
"Continuous integration",
"iOS",
"Xcode"
]
}
@@ -1,6 +1,6 @@
{ {
"name": "Jekyll using Docker image", "name": "Jekyll",
"description": "Package a Jekyll site using the jekyll/builder Docker image.", "description": "Package a Jekyll site using the jekyll/builder Docker image.",
"iconName": "jekyll", "iconName": "jekyll",
"categories": ["Continuous integration", "HTML"] "categories": ["HTML"]
} }
+9
View File
@@ -0,0 +1,9 @@
{
"name": "Laravel",
"description": "Test a Laravel project.",
"iconName": "php",
"categories": [
"PHP",
"Laravel"
]
}
-6
View File
@@ -1,6 +0,0 @@
{
"name": "Build projects with Make",
"description": "Build and test a project using Make.",
"iconName": "makefile",
"categories": ["Continuous integration", "Makefile"]
}
@@ -1,6 +0,0 @@
{
"name": "Publish Java Package with Maven",
"description": "Build a Java Package using Maven and publish to GitHub Packages.",
"iconName": "maven",
"categories": ["Continuous integration", "Java", "Maven", "Spring", "JSF"]
}
+6
View File
@@ -0,0 +1,6 @@
{
"name": "Maven",
"description": "Build and test a Java project with Apache Maven.",
"iconName": "maven",
"categories": ["Java", "Maven"]
}
+6 -6
View File
@@ -1,6 +1,6 @@
{ {
"name": "Node.js", "name": "Node.js",
"description": "Build and test a Node.js project with npm.", "description": "Build and test a Node.js project with npm.",
"iconName": "nodejs", "iconName": "nodejs",
"categories": ["Continuous integration", "JavaScript", "npm", "React", "Angular", "Vue"] "categories": ["JavaScript", "Node", "Npm"]
} }
-6
View File
@@ -1,6 +0,0 @@
{
"name": "Grunt",
"description": "Build a NodeJS project with npm and grunt.",
"iconName": "grunt",
"categories": ["Continuous integration", "JavaScript", "TypeScript", "npm", "Grunt"]
}
-6
View File
@@ -1,6 +0,0 @@
{
"name": "Gulp",
"description": "Build a NodeJS project with npm and gulp.",
"iconName": "gulp",
"categories": ["Continuous integration", "JavaScript", "TypeScript", "npm", "Gulp"]
}
@@ -1,6 +0,0 @@
{
"name": "Publish Node.js Package to GitHub Packages",
"description": "Publishes a Node.js package to GitHub Packages.",
"iconName": "node-package-transparent",
"categories": ["Continuous integration", "JavaScript", "npm"]
}
+3 -3
View File
@@ -1,6 +1,6 @@
{ {
"name": "Publish Node.js Package", "name": "Node.js Package",
"description": "Publishes a Node.js package to npm.", "description": "Publishes a Node.js package to npm and GitHub Package Registry.",
"iconName": "node-package-transparent", "iconName": "node-package-transparent",
"categories": ["Continuous integration", "JavaScript", "npm"] "categories": ["JavaScript", "SDLC"]
} }
@@ -1,6 +0,0 @@
{
"name": "Xcode - Build and Analyze",
"description": "Build Xcode project using xcodebuild",
"iconName": "xcode",
"categories": ["Continuous integration", "Xcode", "Objective-C"]
}
+1 -1
View File
@@ -2,5 +2,5 @@
"name": "PHP", "name": "PHP",
"description": "Build and test a PHP application using Composer", "description": "Build and test a PHP application using Composer",
"iconName": "php", "iconName": "php",
"categories": ["Continuous integration", "PHP", "Composer"] "categories": ["PHP", "Composer"]
} }
-6
View File
@@ -1,6 +0,0 @@
{
"name": "Pylint",
"description": "Lint a Python application with pylint.",
"iconName": "python",
"categories": ["Continuous integration", "Python", "Bottle", "Flask"]
}
+6 -6
View File
@@ -1,6 +1,6 @@
{ {
"name": "Python application", "name": "Python application",
"description": "Create and test a Python application.", "description": "Create and test a Python application.",
"iconName": "python", "iconName": "python",
"categories": ["Continuous integration", "Python", "Bottle", "Flask"] "categories": ["Python"]
} }
@@ -1,6 +0,0 @@
{
"name": "Python Package using Anaconda",
"description": "Create and test a Python package on multiple Python versions using Anaconda for package management.",
"iconName": "python",
"categories": ["Continuous integration", "Python"]
}
+6 -6
View File
@@ -1,6 +1,6 @@
{ {
"name": "Python package", "name": "Python package",
"description": "Create and test a Python package on multiple Python versions.", "description": "Create and test a Python package on multiple Python versions.",
"iconName": "python", "iconName": "python",
"categories": ["Continuous integration", "Python", "Bottle", "Flask"] "categories": ["Python"]
} }
@@ -0,0 +1,6 @@
{
"name": "Publish Python Package",
"description": "Publish a Python Package to PyPI on release.",
"iconName": "python",
"categories": ["Python"]
}
+6
View File
@@ -0,0 +1,6 @@
{
"name": "Ruby",
"description": "Build and test a Ruby project with Rake.",
"iconName": "ruby",
"categories": ["Ruby"]
}
+5 -5
View File
@@ -1,6 +1,6 @@
{ {
"name": "Rust", "name": "Rust",
"description": "Build and test a Rust project with Cargo.", "description": "Build and test a Rust project with Cargo.",
"iconName": "rust", "iconName": "rust",
"categories": ["Continuous integration", "Rust"] "categories": ["Rust"]
} }
+6
View File
@@ -0,0 +1,6 @@
{
"name": "Scala",
"description": "Build and test a Scala project with SBT.",
"iconName": "blank",
"categories": ["Scala", "Java"]
}
+1 -1
View File
@@ -2,5 +2,5 @@
"name": "Swift", "name": "Swift",
"description": "Build and test a Swift Package.", "description": "Build and test a Swift Package.",
"iconName": "swift", "iconName": "swift",
"categories": ["Continuous integration", "Swift"] "categories": ["Swift"]
} }
-6
View File
@@ -1,6 +0,0 @@
{
"name": "Webpack",
"description": "Build a NodeJS project with npm and webpack.",
"iconName": "webpack",
"categories": ["Continuous integration", "JavaScript", "TypeScript", "npm", "Webpack"]
}
-23
View File
@@ -1,23 +0,0 @@
name: Pylint
on: [push]
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.8", "3.9", "3.10"]
steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v3
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install pylint
- name: Analysing the code with pylint
run: |
pylint $(git ls-files '*.py')
+30 -39
View File
@@ -1,39 +1,30 @@
# This workflow will install Python dependencies, run tests and lint with a single version of Python name: Python application
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python
on: [push]
name: Python application
jobs:
on: build:
push:
branches: [ $default-branch ] runs-on: ubuntu-latest
pull_request:
branches: [ $default-branch ] steps:
- uses: actions/checkout@v1
permissions: - name: Set up Python 3.7
contents: read uses: actions/setup-python@v1
with:
jobs: python-version: 3.7
build: - name: Install dependencies
run: |
runs-on: ubuntu-latest python -m pip install --upgrade pip
pip install -r requirements.txt
steps: - name: Lint with flake8
- uses: actions/checkout@v3 run: |
- name: Set up Python 3.10 pip install flake8
uses: actions/setup-python@v3 # stop the build if there are Python syntax errors or undefined names
with: flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
python-version: "3.10" # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
- name: Install dependencies flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
run: | - name: Test with pytest
python -m pip install --upgrade pip run: |
pip install flake8 pytest pip install pytest
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi pytest
- name: Lint with flake8
run: |
# stop the build if there are Python syntax errors or undefined names
flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
# exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
- name: Test with pytest
run: |
pytest
-34
View File
@@ -1,34 +0,0 @@
name: Python Package using Conda
on: [push]
jobs:
build-linux:
runs-on: ubuntu-latest
strategy:
max-parallel: 5
steps:
- uses: actions/checkout@v3
- name: Set up Python 3.10
uses: actions/setup-python@v3
with:
python-version: '3.10'
- name: Add conda to system path
run: |
# $CONDA is an environment variable pointing to the root of the miniconda directory
echo $CONDA/bin >> $GITHUB_PATH
- name: Install dependencies
run: |
conda env update --file environment.yml --name base
- name: Lint with flake8
run: |
conda install flake8
# stop the build if there are Python syntax errors or undefined names
flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
# exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
- name: Test with pytest
run: |
conda install pytest
pytest
+34 -40
View File
@@ -1,40 +1,34 @@
# This workflow will install Python dependencies, run tests and lint with a variety of Python versions name: Python package
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python
on: [push]
name: Python package
jobs:
on: build:
push:
branches: [ $default-branch ] runs-on: ubuntu-latest
pull_request: strategy:
branches: [ $default-branch ] max-parallel: 4
matrix:
jobs: python-version: [2.7, 3.5, 3.6, 3.7]
build:
steps:
runs-on: ubuntu-latest - uses: actions/checkout@v1
strategy: - name: Set up Python ${{ matrix.python-version }}
fail-fast: false uses: actions/setup-python@v1
matrix: with:
python-version: ["3.9", "3.10", "3.11"] python-version: ${{ matrix.python-version }}
- name: Install dependencies
steps: run: |
- uses: actions/checkout@v3 python -m pip install --upgrade pip
- name: Set up Python ${{ matrix.python-version }} pip install -r requirements.txt
uses: actions/setup-python@v3 - name: Lint with flake8
with: run: |
python-version: ${{ matrix.python-version }} pip install flake8
- name: Install dependencies # stop the build if there are Python syntax errors or undefined names
run: | flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
python -m pip install --upgrade pip # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
python -m pip install flake8 pytest flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi - name: Test with pytest
- name: Lint with flake8 run: |
run: | pip install pytest
# stop the build if there are Python syntax errors or undefined names pytest
flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
# exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
- name: Test with pytest
run: |
pytest
+26
View File
@@ -0,0 +1,26 @@
name: Upload Python Package
on:
release:
types: [created]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Set up Python
uses: actions/setup-python@v1
with:
python-version: '3.x'
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install setuptools wheel twine
- name: Build and publish
env:
TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }}
TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }}
run: |
python setup.py sdist bdist_wheel
twine upload dist/*
+20
View File
@@ -0,0 +1,20 @@
name: Ruby
on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Set up Ruby 2.6
uses: actions/setup-ruby@v1
with:
ruby-version: 2.6.x
- name: Build and test with Rake
run: |
gem install bundler
bundle install --jobs 4 --retry 3
bundle exec rake

Some files were not shown because too many files have changed in this diff Show More