Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Migrate CircleCi config to GitHub actions #10274

Merged
merged 35 commits into from Jan 27, 2020
Merged
Show file tree
Hide file tree
Changes from 26 commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
8179948
Add initial config
ijjk Jan 26, 2020
1da8759
Comment out other action
ijjk Jan 26, 2020
005e2b3
Update config
ijjk Jan 26, 2020
c421081
Update config
ijjk Jan 26, 2020
b447805
Update configs
ijjk Jan 26, 2020
8ed18e7
rename requires -> needs
ijjk Jan 26, 2020
1b84538
Update configs
ijjk Jan 26, 2020
15920e6
Update configs
ijjk Jan 26, 2020
7735f7e
Enable headless mode
ijjk Jan 26, 2020
13fe636
Disable circleci while testing
ijjk Jan 26, 2020
1de8347
Disable build-test-deploy in circle
ijjk Jan 26, 2020
ac5821b
Update build step
ijjk Jan 26, 2020
671ad44
Disable fail fast
ijjk Jan 26, 2020
d4c415c
Update configs
ijjk Jan 26, 2020
2392f30
Add runs-on to publish steps
ijjk Jan 26, 2020
5e8a49f
bump
ijjk Jan 26, 2020
97be261
Update config
ijjk Jan 26, 2020
fc4de69
Update group count
ijjk Jan 26, 2020
1690825
Update checkout path
ijjk Jan 26, 2020
31c71c8
Update test all concurrency
ijjk Jan 26, 2020
a993565
Handle EPIPE errors
ijjk Jan 26, 2020
0566bcc
Revert "Handle EPIPE errors"
ijjk Jan 26, 2020
c8cb72d
Update test to handle EPIPE in test
ijjk Jan 26, 2020
b1a3685
Merge branch 'canary' into migrate/gh-actions
ijjk Jan 27, 2020
6cf3653
Remove CircleCi config
ijjk Jan 27, 2020
56f6ec5
Merge branch 'migrate/gh-actions' of github.com:ijjk/next.js into mig…
ijjk Jan 27, 2020
efd2abe
Revert "Update test to handle EPIPE in test"
ijjk Jan 27, 2020
893da4f
Update to use node 10 and see if EPIPE error is still present
ijjk Jan 27, 2020
31f0a4f
Revert "Revert "Update test to handle EPIPE in test""
ijjk Jan 27, 2020
b361c63
Revert "Update to use node 10 and see if EPIPE error is still present"
ijjk Jan 27, 2020
cf9669e
Merge remote-tracking branch 'upstream/canary' into migrate/gh-actions
ijjk Jan 27, 2020
da7da4a
Add todo for node issue
ijjk Jan 27, 2020
1c8b5f0
undo lint change as it should be correct
ijjk Jan 27, 2020
f11865e
Add dummy step to require
ijjk Jan 27, 2020
0376f25
Add runs-on for dummy job
ijjk Jan 27, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
217 changes: 0 additions & 217 deletions .circleci/config.yml

This file was deleted.

104 changes: 104 additions & 0 deletions .github/workflows/build_test_deploy.yml
@@ -0,0 +1,104 @@
on:
push:
branches: [canary]
pull_request:
types: [opened, synchronize]

name: Build, test, and deploy

jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- run: yarn install --frozen-lockfile --check-files
env:
NEXT_TELEMETRY_DISABLED: 1

- uses: actions/cache@v1
id: cache-build
with:
path: '.'
key: ${{ github.sha }}

lint:
runs-on: ubuntu-latest
needs: build
steps:
- uses: actions/cache@v1
id: restore-build
with:
path: '.'
key: ${{ github.sha }}

- run: yarn lint

testAll:
name: Test All
runs-on: ubuntu-latest
needs: build
strategy:
fail-fast: false
matrix:
group: [1, 2, 3, 4, 5, 6]
steps:
- uses: actions/cache@v1
id: restore-build
with:
path: '.'
key: ${{ github.sha }}

- run: node run-tests.js --timings -g ${{ matrix.group }}/6 -c 3
env:
NEXT_TELEMETRY_DISABLED: 1
HEADLESS: true

testFirefox:
name: Test Firefox (production)
runs-on: ubuntu-latest
needs: build
steps:
- uses: actions/cache@v1
id: restore-build
with:
path: '.'
key: ${{ github.sha }}

- run: yarn testfirefox --forceExit test/integration/production/
env:
NEXT_TELEMETRY_DISABLED: 1
HEADLESS: true

testSafari:
name: Test Safari (production)
runs-on: ubuntu-latest
needs: build
if: github.ref == 'canary'
steps:
- uses: actions/cache@v1
id: restore-build
with:
path: '.'
key: ${{ github.sha }}

- run: yarn testsafari --forceExit test/integration/production/
env:
NEXT_TELEMETRY_DISABLED: 1
BROWSERSTACK: true
BROWSERSTACK_USERNAME: ${{ secrets.BROWSERSTACK_USERNAME }}
BROWSERSTACK_ACCESS_KEY: ${{ secrets.BROWSERSTACK_ACCESS_KEY }}

saveNpmToken:
name: Potentially save npm token
runs-on: ubuntu-latest
if: github.ref == 'canary'
needs: [build, testAll]
steps:
- run: ([[ ! -z $NPM_TOKEN ]] && echo "//registry.npmjs.org/:_authToken=$NPM_TOKEN" >> ~/.npmrc) || echo "Did not write npm token"

publishRelease:
name: Potentially publish release
runs-on: ubuntu-latest
needs: saveNpmToken
steps:
- run: ./publish-release.sh
@@ -1,11 +1,14 @@
on: pull_request
name: Generate pull request stats
on:
pull_request:
types: [opened, synchronize]

name: Generate Pull Request Stats

jobs:
prStats:
stats:
name: PR Stats
runs-on: ubuntu-latest
steps:
- name: PR Stats
uses: zeit/next-stats-action@master
- uses: zeit/next-stats-action@master
env:
COMMENT_ENDPOINT: https://next-stats.jjsweb.site/api/comment
@@ -1,5 +1,7 @@
on: release
name: Generate release stats

name: Generate Release Stats

jobs:
prStats:
name: PR Stats
Expand Down
44 changes: 44 additions & 0 deletions .github/workflows/test_react_next.yml
@@ -0,0 +1,44 @@
on:
schedule:
# * is a special character in YAML so you have to quote this string
- cron: '0 0,12 * * *'

name: Test react@next

jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2

- run: cd repo && yarn install --frozen-lockfile --check-files
env:
NEXT_TELEMETRY_DISABLED: 1

- run: cd repo && yarn upgrade react@next react-dom@next -W --dev

- uses: actions/cache@v1
id: cache-build
with:
path: '.'
key: ${{ github.sha }}

testAll:
name: Test All
runs-on: ubuntu-latest
needs: build
strategy:
fail-fast: false
matrix:
group: [1, 2, 3, 4, 5, 6]
steps:
- uses: actions/cache@v1
id: restore-build
with:
path: '.'
key: ${{ github.sha }}

- run: cd repo && node run-tests.js --timings -g ${{ matrix.group }}/6 -c 3
env:
NEXT_TELEMETRY_DISABLED: 1
HEADLESS: true