Compare commits

...

73 Commits

Author SHA1 Message Date
Chris Sidi ce22ce3ec7 Get rid of the last @master bad example 2019-12-03 19:22:53 -05:00
Mike Coutermarsh d675ee1249 Merge pull request #207 from Twonki/patch-1
Fixed Broken Links
2019-11-29 18:16:04 -05:00
Mike Coutermarsh c01d4fce64 Merge pull request #217 from actions/docs/google-starter-workflow
Update google.yml
2019-11-29 18:15:04 -05:00
John Bohannon 6150fb4632 Update google.yml 2019-11-21 08:47:27 -05:00
John Bohannon 481a0913ef Update google.yml 2019-11-20 21:29:34 -05:00
L. Applis 611aeebdf7 Fixed Broken Links
There was no Code of Conduct in this Repository, so it points to the one given as proposal in the Issue Template. 

There is a Licence, however the link was broken for me too.
2019-11-19 11:56:51 +00:00
Andy McKay c8833c3887 Merge pull request #202 from sclaire-1/master
Edit CONTRIBUTING.md
2019-11-18 10:57:33 -08:00
sclaire-1 7b17fb7a4b Edit CONTRIBUTING.md
The sentence introducing the requirements before merging has been edited to improve flow
2019-11-17 16:44:11 -08:00
Edward Thomson bf76e89bff Merge pull request #195 from ethomson/cloud
Add cloud starter workflows
2019-11-14 06:42:11 -08:00
Trey 05a16cf675 Add partner workflows 2019-11-14 06:37:06 -08:00
Chris Sidi a33d16cad6 Use separate steps for install, build and test (#192)
* Use separate steps for install, build and test

Having separate steps makes it easier to determine what failed.

Switching from `npm ci` to `npm install` because the Windows image uses node v8.10.0 and npm v5.6.0. `ci` was introduced in npm v5.7.0.

See https://github.com/actions/virtual-environments/issues/88

* Remove `name`
2019-11-12 11:06:49 -05:00
Mike Coutermarsh 2ce3a0ec1a Merge pull request #179 from josh/docker
Add Docker push to GitHub Package Registry
2019-11-07 17:34:45 -08:00
Mike Coutermarsh 00e9f4c09e Merge pull request #181 from cclauss/patch-1
Upgrade from Python 3.7 to 3.8
2019-11-04 16:54:56 -08:00
Mike Coutermarsh ec1515576f Merge pull request #182 from cclauss/patch-2
Add Python 3.8 to the tests
2019-11-04 16:54:24 -08:00
Mike Coutermarsh d905e1a4db Merge pull request #183 from danielpclin/patch-1
Gradle: Granting execute permission for gradlew
2019-11-04 16:49:13 -08:00
Joshua Peek 8c3d01f201 Add Docker push to GitHub Package Registry
Co-authored-by: Nathan Herald <me@nathanherald.com>
2019-11-04 12:35:20 -08:00
Andy McKay a8bbec5200 Merge pull request #164 from jdkelley/jdkelley/brokenLink
Fix broken link. CONTRIBUTING.md is not in the same directory as pull…
2019-11-04 08:21:40 -08:00
林柏臣 30640b57f2 Gradle: Granting execute permission for gradlew
`./gradlew` build fails because it does not have execute permissions. Adding the execute permissions using chmod fixes this issue.
See https://github.com/actions/starter-workflows/pull/70
2019-11-04 10:46:50 +08:00
Christian Clauss c174991b14 Add Python 3.8 to the tests 2019-11-03 14:43:52 +01:00
Christian Clauss e9d34e43e5 Upgrade from Python 3.7 to 3.8 2019-11-03 14:41:39 +01:00
Joshua Kelley a4dd230e64 Change relative link to fully qualified link. 2019-11-01 22:57:48 -04:00
Mike Coutermarsh a8be2ef60a Merge pull request #173 from actions/ethomson/dotnetcore
Rename "ASP.NET Core" to ".NET Core", add language identifiers.
2019-10-23 17:16:20 -07:00
Edward Thomson c7129d8fd7 Properties: Rename "ASP.NET Core" to ".NET Core", add language categories
Add language categories matching linguist identifiers so that .NET Core template is recommended.
2019-10-23 14:03:00 +01:00
Edward Thomson b1a374cb86 Rename "ASP.NET Core" to ".NET Core"
The .NET Core template is not ASP specific.  Change the name to ".NET Core".
2019-10-23 13:45:35 +01:00
Hayden Faulds bf9694e89a Merge pull request #170 from carlosbuenosvinos/patch-1
Fix TYPO in the comment block
2019-10-18 14:54:42 +01:00
Carlos Buenosvinos 0ce39950d6 Fix TYPO in the comment block 2019-10-18 15:51:16 +02:00
Mike Coutermarsh 254c11de8a Merge pull request #167 from actions/ethomson/label_instructions
Pull Request Labeler: add instructions
2019-10-16 18:44:40 -07:00
Mike Coutermarsh 272bf3b441 Merge pull request #168 from josh/ws
Trim trailing whitespace
2019-10-16 18:44:08 -07:00
Joshua Peek 24f2f86d00 Trim trailing whitespace 2019-10-16 12:40:14 -07:00
Edward Thomson fbda5df60b Pull Request Labeler: add instructions
It was pointed out (https://github.com/actions/labeler/issues/18) that when using the labeler from the starter-workflow, it's not clear that there is more work to do to configure the action.  Add information and link to the action's README.
2019-10-16 18:30:34 +01:00
Joshua Kelley 62b675a84c Fix broken link. CONTRIBUTING.md is not in the same directory as pull_request_template.md. 2019-10-11 12:22:25 -04:00
Andy McKay c7da5a7e80 Merge pull request #61 from leafac/patch-1
Use npm ci instead of npm install
2019-10-08 08:23:04 -07:00
Leandro Facchinetti f761ff73ad Keep the name the same 2019-10-08 09:45:07 -04:00
Andy McKay fa623365b4 Merge pull request #56 from zachguo/patch-1
fix npm-publish.yml
2019-10-07 13:55:19 -07:00
Andy McKay 87b9b0ca12 Merge pull request #54 from JackTreble/master
Add Scala workflow
2019-10-07 13:47:21 -07:00
Andy McKay 36419cb342 Merge pull request #88 from christeredvartsen/issue/15-php-template
Initial commit of PHP template
2019-10-07 13:43:34 -07:00
Andy McKay 4529f67135 Merge pull request #138 from roberto-butti/issue/116-laravel-template
Added Laravel template
2019-10-07 13:42:47 -07:00
Mike Coutermarsh f2e7da9712 Merge pull request #160 from mjhoy/use-haskell-setup
add setup-haskell action to haskell starter workflow
2019-10-05 13:10:05 -07:00
Jack Treble 28e1d85265 change iconName to blank 2019-10-04 17:50:53 +01:00
Michael Hoy 8a8e98dcfe add setup-haskell action to haskell starter workflow 2019-10-04 05:48:05 -04:00
Andy McKay 2b82d4e930 Delete CODE_OF_CONDUCT.md
As per idea from @okuryu there's now an org wide CODE_OF_CONDUCT, so let's just remove this.
2019-10-03 15:15:16 -07:00
Andy McKay ad93884ba3 Merge pull request #156 from actions/add-in-contributing
Add in guidelines for contributing
2019-10-03 14:14:25 -07:00
Roberto B 9f247c9a93 updating due review feedback about following the guidelines 2019-10-03 10:08:25 +02:00
Roberto B f83534a553 Merge branch 'master' into issue/116-laravel-template 2019-10-03 10:00:59 +02:00
Christer Edvartsen 01383c3f3f Change name and add comment regarding test script 2019-10-03 07:08:21 +02:00
Andy McKay 23fb7443be Merge pull request #81 from khoi/swift
Add Swift starter template
2019-10-02 16:51:24 -07:00
Andy McKay e53ea0147d rewrite the pull request template based on feedback 2019-10-02 08:26:13 -07:00
Andy McKay 8b9421c5a8 Update CONTRIBUTING.md
Co-Authored-By: Mike Coutermarsh <mscoutermarsh@github.com>
2019-10-01 13:57:51 -07:00
Andy McKay 59e90d901f Update CONTRIBUTING.md
Co-Authored-By: Mike Coutermarsh <mscoutermarsh@github.com>
2019-10-01 13:57:44 -07:00
Andy McKay 039ac063c2 Update .github/pull_request_template.md
Co-Authored-By: Mike Coutermarsh <mscoutermarsh@github.com>
2019-10-01 13:57:34 -07:00
Andy McKay f2431fbcb0 add in guidelines for contributing 2019-10-01 13:36:41 -07:00
Mike Coutermarsh 9f464a7c99 Merge pull request #113 from nono/patch-1
Update go version to 1.13
2019-09-24 16:50:28 -07:00
Mike Coutermarsh 7ef22763e7 Merge pull request #139 from aibaars/maven-batch
maven.yml: add `-B` to the maven command line
2019-09-24 16:47:41 -07:00
Arthur Baars 117a695161 maven.yml: add -B to the maven command line
Add the `-B` (batch mode) to the `mvn` command line. In interactive mode maven prints many lines of download progress output filling the console output with thousands of useless lines. Ideally the github-actions console would interpret `\r' as carriage return (go back to the beginning of the current line and overwrite it). As long as that is not the case using `-B` is a good workaround.
2019-09-20 12:41:36 -07:00
Roberto B 8365b9ecb2 Added Laravel template 2019-09-20 18:44:58 +02:00
Zach Guo 7f515b734a only trigger npm publish on release creation event 2019-09-17 12:31:43 -07:00
Bruno Michel 65acb4a192 Update go version to 1.13 2019-09-10 08:48:48 +02:00
Jack Treble b0a460212d add JDK setup & add scala.properties.json 2019-09-09 11:12:23 +01:00
Jonathan Clem dcaa948ed3 Merge pull request #55 from tsloughter/erlang-rebar3
update Erlang workflow to rebar3
2019-09-06 15:19:13 -04:00
Mike Coutermarsh 57d97826a2 Merge pull request #69 from montudor-forks/ci/python-pypi
Publish Python package to PyPI workflow
2019-09-06 11:52:00 -07:00
Monte Hellawell 03063e080a Only trigger workflow on release created event action 2019-09-05 12:10:28 +01:00
Chris Patterson 13af371169 Adding python application template 2019-09-04 13:32:35 -04:00
Mike Coutermarsh 239b6d1b96 Merge pull request #94 from VincentTam/patch-1
Used absolute path for '/srv/jekyll'
2019-09-03 09:58:53 -07:00
Vincent Tam 93f235a08a Used absolute path for '/srv/jekyll'
To avoid error "chmod: srv/jekyll: No such file or directory", see https://github.com/VincentTam/beautiful-jekyll/commit/2d0370a1f93818a8a8e19dc364e8906ee76aedd7/checks#step:3:6.
2019-09-02 23:21:23 +02:00
Christer Edvartsen c2600f2e02 Initial commit of PHP template
Resolves #15
2019-09-01 13:36:46 +02:00
Jeremy Epling 77cce53687 Merge pull request #82 from actions/kaylangan-patch-1
Run daily not hourly
2019-08-29 14:53:36 -04:00
Kayla Ngan bb1f3bb0b8 Run daily not hourly 2019-08-29 14:52:56 -04:00
khoi 941b3de36e Add Swift starter template 2019-08-29 14:21:24 +07:00
Monte Hellawell aef55ffd4b Add publish python workflow 2019-08-25 01:13:29 +01:00
Leandro Facchinetti bc65c241ed Use npm ci instead of npm install
https://docs.npmjs.com/cli/ci.html
2019-08-21 11:12:54 -04:00
Zach Guo 654b83e0f3 fix absent node_modules for npm publish 2019-08-20 15:00:38 -07:00
Tristan Sloughter e74b1236d2 update Erlang workflow to rebar3
rebar3 no longer has a separate step for fetching dependencies so
this step is removed. Common Test is enabled in the test run so it
will run all tests.

The Erlang docker image is used instead of ubuntu because ubuntu
has no package for rebar3.
2019-08-20 14:38:08 -06:00
Jack Treble 3eb436ecce Add Scala template 2019-08-20 15:12:26 +01:00
43 changed files with 576 additions and 45 deletions
+19
View File
@@ -0,0 +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:
- [ ] Include a good description of the workflow.
- [ ] Links to the language or tool will be nice (unless its really obvious)
In the workflow and properties files:
- [ ] Includes a matching `ci/properties/*.properties.json` file.
- [ ] 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")
- [ ] Include comments in the workflow for any parts that are not obvious or could use clarification.
- [ ] CI workflows should run `push`.
- [ ] Packaging workflows should run on `release` with `types: [created]`.
Some general notes:
- [ ] 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.
- [ ] Does not use a paid service or product.
+20
View File
@@ -0,0 +1,20 @@
## Contributing
[code-of-conduct]: CODE_OF_CONDUCT.md
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).
Please note that this project is released with a [Contributor Code of Conduct](
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:
- 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.
- Should not send data to any 3rd party service except for the purposes of installing dependencies.
- Cannot use an Action that isn't in the `actions` organization.
- Cannot be to a paid service or product.
Thank you
+8 -1
View File
@@ -1,3 +1,10 @@
# 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]
@@ -9,4 +16,4 @@ jobs:
steps:
- uses: actions/labeler@v2
with:
repo-token: "${{ secrets.GITHUB_TOKEN }}"
repo-token: "${{ secrets.GITHUB_TOKEN }}"
+2 -2
View File
@@ -2,13 +2,13 @@ name: Mark stale issues and pull requests
on:
schedule:
- cron: "0 * * * *"
- cron: "0 0 * * *"
jobs:
stale:
runs-on: ubuntu-latest
steps:
- uses: actions/stale@v1
with:
+2 -2
View File
@@ -4,9 +4,9 @@ on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Set up JDK 1.8
+82
View File
@@ -0,0 +1,82 @@
# This workflow will build and push a new container image to Amazon ECR,
# and then will deploy a new task definition to Amazon ECS, on every push
# to the master branch.
#
# To use this workflow, you will need to complete the following set-up steps:
#
# 1. Create an ECR repository to store your images.
# For example: `aws ecr create-repository --repository-name my-ecr-repo --region us-east-2`.
# Replace the value of `ECR_REPOSITORY` in the workflow below with your repository's name.
# Replace the value of `aws-region` in the workflow below with your repository's region.
#
# 2. Create an ECS task definition, an ECS cluster, and an ECS service.
# For example, follow the Getting Started guide on the ECS console:
# https://us-east-2.console.aws.amazon.com/ecs/home?region=us-east-2#/firstRun
# Replace the values for `service` and `cluster` in the workflow below with your service and cluster names.
#
# 3. Store your ECS task definition as a JSON file in your repository.
# The format should follow the output of `aws ecs register-task-definition --generate-cli-skeleton`.
# Replace the value of `task-definition` in the workflow below with your JSON file's name.
# Replace the value of `container-name` in the workflow below with the name of the container
# in the `containerDefinitions` section of the task definition.
#
# 4. Store an IAM user access key in GitHub Actions secrets named `AWS_ACCESS_KEY_ID` and `AWS_SECRET_ACCESS_KEY`.
# See the documentation for each action used below for the recommended IAM policies for this IAM user,
# and best practices on handling the access key credentials.
on:
push:
branches:
- master
name: Deploy to Amazon ECS
jobs:
deploy:
name: Deploy
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v1
- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v1
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: us-east-2
- name: Login to Amazon ECR
id: login-ecr
uses: aws-actions/amazon-ecr-login@v1
- name: Build, tag, and push image to Amazon ECR
id: build-image
env:
ECR_REGISTRY: ${{ steps.login-ecr.outputs.registry }}
ECR_REPOSITORY: my-ecr-repo
IMAGE_TAG: ${{ github.sha }}
run: |
# Build a docker container and
# push it to ECR so that it can
# be deployed to ECS.
docker build -t $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG .
docker push $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG
echo "::set-output name=image::$ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG"
- name: Fill in the new image ID in the Amazon ECS task definition
id: task-def
uses: aws-actions/amazon-ecs-render-task-definition@v1
with:
task-definition: task-definition.json
container-name: sample-app
image: ${{ steps.build-image.outputs.image }}
- name: Deploy Amazon ECS task definition
uses: aws-actions/amazon-ecs-deploy-task-definition@v1
with:
task-definition: ${{ steps.task-def.outputs.task-definition }}
service: sample-app-service
cluster: default
wait-for-service-stability: true
+43
View File
@@ -0,0 +1,43 @@
# This workflow will build and push a node.js application to an Azure Web App on every push to the master branch.
#
# To configure this workflow:
#
# 1. Set up a secret in your repository named AZURE_WEBAPP_PUBLISH_PROFILE with the value of your Azure publish profile.
#
# 2. Change the values for the AZURE_WEBAPP_NAME, AZURE_WEBAPP_PACKAGE_PATH and NODE_VERSION environment variables (below).
#
# For more information on GitHub Actions for Azure, refer to https://github.com/Azure/Actions
# For more samples to get started with GitHub Action workflows to deploy to Azure, refer to https://github.com/Azure/actions-workflow-samples
on:
push:
branches:
- master
env:
AZURE_WEBAPP_NAME: your-app-name # set this to your application's name
AZURE_WEBAPP_PACKAGE_PATH: '.' # set this to the path to your web app project, defaults to the repository root
NODE_VERSION: '10.x' # set this to the node version to use
jobs:
build-and-deploy:
name: Build and Deploy
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@master
- name: Use Node.js ${{ env.NODE_VERSION }}
uses: actions/setup-node@v1
with:
node-version: ${{ env.NODE_VERSION }}
- name: npm install, build, and test
run: |
# Build and test the project, then
# deploy to Azure Web App.
npm install
npm run build --if-present
npm run test --if-present
- name: 'Deploy to Azure WebApp'
uses: azure/webapps-deploy@v1
with:
app-name: ${{ env.AZURE_WEBAPP_NAME }}
publish-profile: ${{ secrets.AZURE_WEBAPP_PUBLISH_PROFILE }}
package: ${{ env.AZURE_WEBAPP_PACKAGE_PATH }}
+1 -1
View File
@@ -6,7 +6,7 @@ jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Run a one-line script
+2 -2
View File
@@ -4,9 +4,9 @@ on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Install dependencies
+2 -2
View File
@@ -6,10 +6,10 @@ jobs:
build:
runs-on: ubuntu-latest
container:
image: crystallang/crystal
steps:
- uses: actions/checkout@v1
- name: Install dependencies
+2 -2
View File
@@ -6,10 +6,10 @@ jobs:
build:
runs-on: ubuntu-latest
container:
image: google/dart:latest
steps:
- uses: actions/checkout@v1
- name: Install dependencies
+2 -2
View File
@@ -5,9 +5,9 @@ on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Build the Docker image
+73
View File
@@ -0,0 +1,73 @@
name: Docker
on:
push:
# Publish `master` as Docker `latest` image.
branches:
- master
# Publish `v1.2.3` tags as releases.
tags:
- v*
# Run tests for any PRs.
pull_request:
env:
# TODO: Change variable to your image's name.
IMAGE_NAME: image
jobs:
# Run tests.
# See also https://docs.docker.com/docker-hub/builds/automated-testing/
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Run tests
run: |
if [ -f docker-compose.test.yml ]; then
docker-compose --file docker-compose.test.yml build
docker-compose --file docker-compose.test.yml run sut
else
docker build . --file Dockerfile
fi
# Push image to GitHub Package Registry.
# See also https://docs.docker.com/docker-hub/builds/
push:
# Ensure test job passes before pushing image.
needs: test
runs-on: ubuntu-latest
if: github.event_name == 'push'
steps:
- uses: actions/checkout@v1
- name: Build image
run: docker build . --file Dockerfile --tag image
- name: Log into registry
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login docker.pkg.github.com -u ${{ github.actor }} --password-stdin
- name: Push image
run: |
IMAGE_ID=docker.pkg.github.com/${{ github.repository }}/$IMAGE_NAME
# Strip git ref prefix from version
VERSION=$(echo "${{ github.ref }}" | sed -e 's,.*/\(.*\),\1,')
# Strip "v" prefix from tag name
[[ "${{ github.ref }}" == "refs/tags/"* ]] && VERSION=$(echo $VERSION | sed -e 's/^v//')
# Use Docker `latest` tag convention
[ "$VERSION" == "master" ] && VERSION=latest
echo IMAGE_ID=$IMAGE_ID
echo VERSION=$VERSION
docker tag image $IMAGE_ID:$VERSION
docker push $IMAGE_ID:$VERSION
+2 -2
View File
@@ -1,4 +1,4 @@
name: ASP.NET Core CI
name: .NET Core
on: [push]
@@ -6,7 +6,7 @@ jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Setup .NET Core
+5 -4
View File
@@ -8,11 +8,12 @@ jobs:
runs-on: ubuntu-latest
container:
image: erlang:22.0.7
steps:
- uses: actions/checkout@v1
- name: Install dependencies
run: rebar get-deps
- name: Compile
run: rebar compile
run: rebar3 compile
- name: Run tests
run: rebar skip_deps=true eunit
run: rebar3 do eunit, ct
+2 -2
View File
@@ -7,10 +7,10 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Set up Go 1.12
- name: Set up Go 1.13
uses: actions/setup-go@v1
with:
go-version: 1.12
go-version: 1.13
id: go
- name: Check out code into the Go module directory
+74
View File
@@ -0,0 +1,74 @@
# This workflow will build a docker container, publish it to Google Container Registry, and deploy it to GKE.
#
# To configure this workflow:
#
# 1. Ensure that your repository contains the necessary configuration for your Google Kubernetes Engine cluster, including deployment.yml, kustomization.yml, service.yml, etc.
#
# 2. Set up secrets in your workspace: GKE_PROJECT with the name of the project, GKE_EMAIL with the service account email, GKE_KEY with the Base64 encoded JSON service account key (https://github.com/GoogleCloudPlatform/github-actions/tree/docs/service-account-key/setup-gcloud#inputs).
#
# 3. Change the values for the GKE_ZONE, GKE_CLUSTER and IMAGE environment variables (below).
name: Build and Deploy to GKE
on:
push:
branches:
- master
# Environment variables available to all jobs and steps in this workflow
env:
GKE_PROJECT: ${{ secrets.GKE_PROJECT }}
GKE_EMAIL: ${{ secrets.GKE_EMAIL }}
GITHUB_SHA: ${{ github.sha }}
GKE_ZONE: us-west1-a
GKE_CLUSTER: example-gke-cluster
IMAGE: gke-test
jobs:
setup-build-publish-deploy:
name: Setup, Build, Publish, and Deploy
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v1
# Setup gcloud CLI
- uses: GoogleCloudPlatform/github-actions/setup-gcloud@0.1.0
with:
version: '270.0.0'
service_account_email: ${{ secrets.GKE_EMAIL }}
service_account_key: ${{ secrets.GKE_KEY }}
# Configure docker to use the gcloud command-line tool as a credential helper
- run: |
# Set up docker to authenticate
# via gcloud command-line tool.
gcloud auth configure-docker
# Build the Docker image
- name: Build
run: |
docker build -t gcr.io/"$GKE_PROJECT"/"$IMAGE":"$GITHUB_SHA" \
--build-arg GITHUB_SHA="$GITHUB_SHA" \
--build-arg GITHUB_REF="$GITHUB_REF" .
# Push the Docker image to Google Container Registry
- name: Publish
run: |
docker push gcr.io/$GKE_PROJECT/$IMAGE:$GITHUB_SHA
# Set up kustomize
- name: Set up Kustomize
run: |
curl -o kustomize --location https://github.com/kubernetes-sigs/kustomize/releases/download/v3.1.0/kustomize_3.1.0_linux_amd64
chmod u+x ./kustomize
# Deploy the Docker image to the GKE cluster
- name: Deploy
run: |
gcloud container clusters get-credentials $GKE_CLUSTER --zone $GKE_ZONE --project $GKE_PROJECT
./kustomize edit set image gcr.io/$GKE_PROJECT/$IMAGE:${GITHUB_SHA}
./kustomize build . | kubectl apply -f -
kubectl rollout status deployment/gke-test
kubectl get services -o wide
+2
View File
@@ -13,5 +13,7 @@ jobs:
uses: actions/setup-java@v1
with:
java-version: 1.8
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Build with Gradle
run: ./gradlew build
+8 -2
View File
@@ -4,13 +4,19 @@ 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 install --only-dependencies --enable-tests
run: |
cabal update
cabal install --only-dependencies --enable-tests
- name: Build
run: |
cabal configure --enable-tests
+1 -1
View File
@@ -13,4 +13,4 @@ jobs:
run: |
docker run \
-v ${{ github.workspace }}:/srv/jekyll -v ${{ github.workspace }}/_site:/srv/jekyll/_site \
jekyll/builder:latest /bin/bash -c "chmod 777 srv/jekyll && jekyll build --future"
jekyll/builder:latest /bin/bash -c "chmod 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
+1 -1
View File
@@ -14,4 +14,4 @@ jobs:
with:
java-version: 1.8
- name: Build with Maven
run: mvn package --file pom.xml
run: mvn -B package --file pom.xml
+3 -5
View File
@@ -17,10 +17,8 @@ jobs:
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}
- name: npm install, build, and test
run: |
npm install
npm run build --if-present
npm test
- run: npm install
- run: npm run build --if-present
- run: npm test
env:
CI: true
+4 -6
View File
@@ -1,12 +1,8 @@
name: Node.js Package
on:
pull_request:
branches:
- master
push:
branches:
- master
release:
types: [created]
jobs:
build:
@@ -28,6 +24,7 @@ jobs:
with:
node-version: 12
registry-url: https://registry.npmjs.org/
- run: npm ci
- run: npm publish
env:
NODE_AUTH_TOKEN: ${{secrets.npm_token}}
@@ -42,6 +39,7 @@ jobs:
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}}
+23
View File
@@ -0,0 +1,23 @@
name: PHP Composer
on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Validate composer.json and composer.lock
run: composer validate
- name: Install dependencies
run: composer install --prefer-dist --no-progress --no-suggest
# Add a test script to composer.json, for instance: "test": "vendor/bin/phpunit"
# Docs: https://getcomposer.org/doc/articles/scripts.md
# - name: Run test suite
# run: composer run-script test
@@ -1,6 +0,0 @@
{
"name": "ASP.NET Core",
"description": "Build and test an ASP.NET Core project targeting .NET Core.",
"iconName": "dotnetcore",
"categories": ["ASP", "ASP.NET", ".NET"]
}
+6
View File
@@ -0,0 +1,6 @@
{
"name": "Deploy to Amazon ECS",
"description": "Deploy a container to an Amazon ECS service powered by AWS Fargate or Amazon EC2.",
"iconName": "aws",
"categories": null
}
+6
View File
@@ -0,0 +1,6 @@
{
"name": "Deploy Node.js to Azure Web App",
"description": "Build a Node.js project and deploy it to an Azure Web App.",
"iconName": "azure",
"categories": null
}
@@ -0,0 +1,6 @@
{
"name": "Docker push",
"description": "Build, test and push Docker image to GitHub Package Registry.",
"iconName": "docker",
"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
@@ -0,0 +1,6 @@
{
"name": "Build and Deploy to GKE",
"description": "Build a docker container, publish it to Google Container Registry, and deploy to GKE.",
"iconName": "googlegke",
"categories": null
}
+9
View File
@@ -0,0 +1,9 @@
{
"name": "Laravel",
"description": "Test a Laravel project.",
"iconName": "php",
"categories": [
"PHP",
"Laravel"
]
}
+6
View File
@@ -0,0 +1,6 @@
{
"name": "PHP",
"description": "Build and test a PHP application using Composer",
"iconName": "php",
"categories": ["PHP", "Composer"]
}
+6
View File
@@ -0,0 +1,6 @@
{
"name": "Python application",
"description": "Create and test a Python application.",
"iconName": "python",
"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": "Scala",
"description": "Build and test a Scala project with SBT.",
"iconName": "blank",
"categories": ["Scala", "Java"]
}
+6
View File
@@ -0,0 +1,6 @@
{
"name": "Swift",
"description": "Build and test a Swift Package.",
"iconName": "swift",
"categories": ["Swift"]
}
+30
View File
@@ -0,0 +1,30 @@
name: Python application
on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Set up Python 3.8
uses: actions/setup-python@v1
with:
python-version: 3.8
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
- name: Lint with flake8
run: |
pip 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: |
pip install pytest
pytest
+2 -2
View File
@@ -7,9 +7,9 @@ jobs:
runs-on: ubuntu-latest
strategy:
max-parallel: 4
max-parallel: 5
matrix:
python-version: [2.7, 3.5, 3.6, 3.7]
python-version: [2.7, 3.5, 3.6, 3.7, 3.8]
steps:
- uses: actions/checkout@v1
+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/*
+17
View File
@@ -0,0 +1,17 @@
name: Scala 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: Run tests
run: sbt test
+15
View File
@@ -0,0 +1,15 @@
name: Swift
on: [push]
jobs:
build:
runs-on: macOS-latest
steps:
- uses: actions/checkout@v1
- name: Build
run: swift build -v
- name: Run tests
run: swift test -v
+10
View File
@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="40px" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 40 36" version="1.1" height="36px">
<defs>
<linearGradient id="a" x2="50%" x1="50%" y2="100%">
<stop stop-color="#F88A36" offset="0"/>
<stop stop-color="#FD2020" offset="1"/>
</linearGradient>
</defs>
<path d="m29.885 33.047c-4.667 2.696-11.084 2.973-17.54 0.206-5.2273-2.224-9.5646-6.117-12.345-10.565 1.3346 1.112 2.8916 2.002 4.5598 2.78 6.6672 3.125 13.333 2.911 18.024 0.008-0.003-0.003-0.005-0.005-0.007-0.008-6.673-5.116-12.345-11.789-16.571-17.238-0.8901-0.8898-1.5574-2.002-2.2247-3.0029 5.1159 4.671 13.235 10.565 16.126 12.234-6.116-6.451-11.566-14.458-11.344-14.236 9.676 9.787 18.685 15.348 18.685 15.348 0.298 0.168 0.528 0.308 0.713 0.433 0.195-0.496 0.366-1.011 0.51-1.545 1.557-5.672-0.222-12.123-4.115-17.461 9.008 5.4495 14.347 15.681 12.122 24.245-0.058 0.231-0.121 0.459-0.189 0.683 0.026 0.031 0.052 0.063 0.078 0.096 4.448 5.561 3.225 11.455 2.669 10.343-2.413-4.722-6.88-3.278-9.151-2.32z" fill="url(#a)"/>
</svg>

After

Width:  |  Height:  |  Size: 1.0 KiB