Skip to content

Commit c3d9dc9

Browse files
committed
Merge branch 'main' into cleanupnames
2 parents e06c021 + e49f416 commit c3d9dc9

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

64 files changed

+145
-325
lines changed

.github/workflows/coder.yaml renamed to .github/workflows/ci.yaml

Lines changed: 82 additions & 131 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: coder
1+
name: ci
22

33
on:
44
push:
@@ -28,109 +28,44 @@ concurrency:
2828
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
2929

3030
jobs:
31-
typos:
32-
runs-on: ubuntu-latest
31+
lint:
32+
runs-on: ${{ github.repository_owner == 'coder' && 'ubuntu-latest-16-cores' || 'ubuntu-latest' }}
3333
steps:
3434
- name: Checkout
35-
uses: actions/checkout@v2
36-
- name: typos-action
35+
uses: actions/checkout@v3
36+
37+
# Install Go!
38+
- uses: actions/setup-go@v3
39+
with:
40+
go-version: "~1.19"
41+
42+
# Check for any typos!
43+
- name: Check for typos
3744
uses: crate-ci/typos@v1.13.3
3845
with:
3946
config: .github/workflows/typos.toml
40-
- name: Fix Helper
47+
- name: Fix the typos
4148
if: ${{ failure() }}
4249
run: |
4350
echo "::notice:: you can automatically fix typos from your CLI:
4451
cargo install typos-cli
4552
typos -c .github/workflows/typos.toml -w"
4653
47-
changes:
48-
runs-on: ubuntu-latest
49-
outputs:
50-
docs-only: ${{ steps.filter.outputs.docs_count == steps.filter.outputs.all_count }}
51-
sh: ${{ steps.filter.outputs.sh }}
52-
ts: ${{ steps.filter.outputs.ts }}
53-
k8s: ${{ steps.filter.outputs.k8s }}
54-
steps:
55-
- uses: actions/checkout@v3
56-
# For pull requests it's not necessary to checkout the code
57-
- uses: dorny/paths-filter@v2
58-
id: filter
59-
with:
60-
filters: |
61-
all:
62-
- '**'
63-
docs:
64-
- 'docs/**'
65-
# For testing:
66-
# - '.github/**'
67-
sh:
68-
- "**.sh"
69-
ts:
70-
- 'site/**'
71-
k8s:
72-
- 'helm/**'
73-
- Dockerfile
74-
- scripts/helm.sh
75-
- id: debug
76-
run: |
77-
echo "${{ toJSON(steps.filter )}}"
78-
79-
# Debug step
80-
debug-inputs:
81-
needs:
82-
- changes
83-
runs-on: ubuntu-latest
84-
steps:
85-
- id: log
86-
run: |
87-
echo "${{ toJSON(needs) }}"
88-
89-
style-lint-golangci:
90-
name: style/lint/golangci
91-
timeout-minutes: 5
92-
runs-on: ${{ github.repository_owner == 'coder' && 'ubuntu-latest-16-cores' || 'ubuntu-latest' }}
93-
steps:
94-
- uses: actions/checkout@v3
95-
- uses: actions/setup-go@v3
96-
with:
97-
go-version: "~1.19"
98-
- name: golangci-lint
54+
# Check for Go linting errors!
55+
- name: Lint Go
9956
uses: golangci/golangci-lint-action@v3.3.1
10057
with:
10158
version: v1.48.0
10259

103-
check-enterprise-imports:
104-
name: check/enterprise-imports
105-
timeout-minutes: 5
106-
runs-on: ubuntu-latest
107-
steps:
108-
- uses: actions/checkout@v3
109-
- name: Check imports of enterprise code
110-
run: ./scripts/check_enterprise_imports.sh
111-
112-
style-lint-shellcheck:
113-
name: style/lint/shellcheck
114-
timeout-minutes: 5
115-
runs-on: ubuntu-latest
116-
steps:
117-
- uses: actions/checkout@v3
118-
- name: Run ShellCheck
60+
- name: Lint shell scripts
11961
uses: ludeeus/action-shellcheck@1.1.0
12062
env:
12163
SHELLCHECK_OPTS: --external-sources
12264
with:
12365
ignore: node_modules
12466

125-
style-lint-typescript:
126-
name: "style/lint/typescript"
127-
timeout-minutes: 5
128-
runs-on: ubuntu-latest
129-
steps:
130-
- name: Checkout
131-
uses: actions/checkout@v3
132-
133-
- name: Cache Node
67+
# Lint our dashboard!
68+
- name: Cache node_modules
13469
id: cache-node
13570
uses: actions/cache@v3
13671
with:
@@ -140,36 +75,81 @@ jobs:
14075
key: js-${{ runner.os }}-test-${{ hashFiles('**/yarn.lock') }}
14176
restore-keys: |
14277
js-${{ runner.os }}-
143-
14478
- name: Install node_modules
14579
run: ./scripts/yarn_install.sh
146-
147-
- name: "yarn lint"
80+
- name: Lint TypeScript
14881
run: yarn lint
14982
working-directory: site
15083

151-
style-lint-k8s:
152-
name: "style/lint/k8s"
153-
timeout-minutes: 5
154-
needs: changes
155-
if: needs.changes.outputs.k8s == 'true'
156-
runs-on: ubuntu-latest
157-
steps:
158-
- name: Checkout
159-
uses: actions/checkout@v3
160-
84+
# Make sure the Helm chart is linted!
16185
- name: Install helm
16286
uses: azure/setup-helm@v3
16387
with:
16488
version: v3.9.2
165-
166-
- name: cd helm && make lint
89+
- name: Lint Helm chart
16790
run: |
16891
cd helm
16992
make lint
17093
94+
# Check for dead links in our markdown!
95+
# For the main branch:
96+
- if: github.ref == 'refs/heads/main' && !github.event.pull_request.head.repo.fork
97+
uses: gaurav-nelson/github-action-markdown-link-check@v1
98+
name: Check for dead links (main)
99+
timeout-minutes: 1
100+
with:
101+
use-quiet-mode: yes
102+
use-verbose-mode: yes
103+
config-file: .github/workflows/mlc_config.json
104+
# For pull requests:
105+
- if: github.ref != 'refs/heads/main' || github.event.pull_request.head.repo.fork
106+
uses: gaurav-nelson/github-action-markdown-link-check@v1
107+
name: Check for dead links (pull request)
108+
timeout-minutes: 1
109+
with:
110+
use-quiet-mode: yes
111+
use-verbose-mode: yes
112+
check-modified-files-only: yes
113+
base-branch: main
114+
config-file: .github/workflows/mlc_config.json
115+
116+
# Ensure AGPL and Enterprise are separated!
117+
- name: Check for AGPL code importing Enterprise...
118+
run: ./scripts/check_enterprise_imports.sh
119+
120+
changes:
121+
runs-on: ubuntu-latest
122+
outputs:
123+
docs-only: ${{ steps.filter.outputs.docs_count == steps.filter.outputs.all_count }}
124+
sh: ${{ steps.filter.outputs.sh }}
125+
ts: ${{ steps.filter.outputs.ts }}
126+
k8s: ${{ steps.filter.outputs.k8s }}
127+
steps:
128+
- uses: actions/checkout@v3
129+
# For pull requests it's not necessary to checkout the code
130+
- uses: dorny/paths-filter@v2
131+
id: filter
132+
with:
133+
filters: |
134+
all:
135+
- '**'
136+
docs:
137+
- 'docs/**'
138+
# For testing:
139+
# - '.github/**'
140+
sh:
141+
- "**.sh"
142+
ts:
143+
- 'site/**'
144+
k8s:
145+
- 'helm/**'
146+
- Dockerfile
147+
- scripts/helm.sh
148+
- id: debug
149+
run: |
150+
echo "${{ toJSON(steps.filter )}}"
151+
171152
gen:
172-
name: "style/gen"
173153
timeout-minutes: 8
174154
runs-on: ${{ github.repository_owner == 'coder' && 'ubuntu-latest-16-cores' || 'ubuntu-latest' }}
175155
needs: changes
@@ -243,8 +223,7 @@ jobs:
243223
- name: Check for unstaged files
244224
run: ./scripts/check_unstaged.sh
245225

246-
style-fmt:
247-
name: "style/fmt"
226+
fmt:
248227
runs-on: ubuntu-latest
249228
timeout-minutes: 5
250229
steps:
@@ -280,7 +259,6 @@ jobs:
280259
run: ./scripts/check_unstaged.sh
281260

282261
test-go:
283-
name: "test/go"
284262
runs-on: ${{ matrix.os == 'ubuntu-latest' && github.repository_owner == 'coder' && 'ubuntu-latest-16-cores' || matrix.os == 'windows-2022' && github.repository_owner == 'coder' && 'windows-latest-8-cores'|| matrix.os }}
285263
timeout-minutes: 20
286264
strategy:
@@ -365,8 +343,7 @@ jobs:
365343
files: ./gotests.coverage
366344
flags: unittest-go-${{ matrix.os }}
367345

368-
test-go-postgres:
369-
name: "test/go/postgres"
346+
test-go-psql:
370347
runs-on: ${{ github.repository_owner == 'coder' && 'ubuntu-latest-16-cores' || 'ubuntu-latest' }}
371348
# This timeout must be greater than the timeout set by `go test` in
372349
# `make test-postgres` to ensure we receive a trace of running
@@ -532,7 +509,6 @@ jobs:
532509
retention-days: 7
533510

534511
test-js:
535-
name: "test/js"
536512
runs-on: ${{ github.repository_owner == 'coder' && 'ubuntu-latest-16-cores' || 'ubuntu-latest' }}
537513
timeout-minutes: 20
538514
steps:
@@ -572,16 +548,11 @@ jobs:
572548
flags: unittest-js
573549

574550
test-e2e:
575-
name: "test/e2e/${{ matrix.os }}"
576551
needs:
577552
- changes
578553
if: needs.changes.outputs.docs-only == 'false'
579-
runs-on: ${{ matrix.os }}
554+
runs-on: ${{ github.repository_owner == 'coder' && 'ubuntu-latest-16-cores' || 'ubuntu-latest' }}
580555
timeout-minutes: 20
581-
strategy:
582-
matrix:
583-
os:
584-
- ubuntu-latest
585556
steps:
586557
- uses: actions/checkout@v3
587558

@@ -693,23 +664,3 @@ jobs:
693664
buildScriptName: "storybook:build"
694665
projectToken: 695c25b6cb65
695666
workingDir: "./site"
696-
markdown-link-check:
697-
runs-on: ubuntu-latest
698-
steps:
699-
- uses: actions/checkout@master
700-
# For the main branch:
701-
- if: github.ref == 'refs/heads/main' && !github.event.pull_request.head.repo.fork
702-
uses: gaurav-nelson/github-action-markdown-link-check@v1
703-
with:
704-
use-quiet-mode: yes
705-
use-verbose-mode: yes
706-
config-file: .github/workflows/mlc_config.json
707-
# For pull requests:
708-
- if: github.ref != 'refs/heads/main' || github.event.pull_request.head.repo.fork
709-
uses: gaurav-nelson/github-action-markdown-link-check@v1
710-
with:
711-
use-quiet-mode: yes
712-
use-verbose-mode: yes
713-
check-modified-files-only: yes
714-
base-branch: main
715-
config-file: .github/workflows/mlc_config.json

.github/workflows/cla.yaml

Lines changed: 0 additions & 26 deletions
This file was deleted.

0 commit comments

Comments
 (0)