Skip to content

Commit 182c8f7

Browse files
author
Yixin Hao
committed
Merge tag 'v2.1.5' into immoral-v0.17.0
Release v2.1.5
2 parents e687f22 + 66019ef commit 182c8f7

File tree

1,774 files changed

+149893
-50529
lines changed

Some content is hidden

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

1,774 files changed

+149893
-50529
lines changed

.devcontainer/Dockerfile

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

.devcontainer/devcontainer.json

Lines changed: 9 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,12 @@
1-
// For format details, see https://aka.ms/devcontainer.json
21
{
32
"name": "Development environments on your infrastructure",
4-
5-
// Sets the run context to one level up instead of the .devcontainer folder.
6-
"context": ".",
7-
8-
// Update the 'dockerFile' property if you aren't using the standard 'Dockerfile' filename.
9-
"dockerFile": "Dockerfile",
10-
11-
// Use 'forwardPorts' to make a list of ports inside the container available locally.
12-
// "forwardPorts": [],
13-
14-
"postStartCommand": "dockerd",
15-
16-
// privileged is required by GitHub codespaces - https://github.com/microsoft/vscode-dev-containers/issues/727
17-
"runArgs": [
18-
"--cap-add=SYS_PTRACE",
19-
"--security-opt",
20-
"seccomp=unconfined",
21-
"--privileged",
22-
"--init"
23-
]
3+
"image": "codercom/oss-dogfood:latest",
4+
5+
"features": {
6+
// See all possible options here https://github.com/devcontainers/features/tree/main/src/docker-in-docker
7+
"ghcr.io/devcontainers/features/docker-in-docker:2": {}
8+
},
9+
// SYS_PTRACE to enable go debugging
10+
// without --priviliged the Github Codespace build fails (not required otherwise)
11+
"runArgs": ["--cap-add=SYS_PTRACE", "--privileged"]
2412
}

.gitattributes

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
# Generated files
22
coderd/apidoc/docs.go linguist-generated=true
3+
docs/api/*.md linguist-generated=true
4+
docs/cli/*.md linguist-generated=true
35
coderd/apidoc/swagger.json linguist-generated=true
46
coderd/database/dump.sql linguist-generated=true
57
peerbroker/proto/*.go linguist-generated=true
@@ -9,3 +11,4 @@ provisionersdk/proto/*.go linguist-generated=true
911
*.tfstate.json linguist-generated=true
1012
*.tfstate.dot linguist-generated=true
1113
*.tfplan.dot linguist-generated=true
14+
site/src/api/typesGenerated.ts linguist-generated=true

.github/actions/setup-go/action.yaml

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ description: |
44
inputs:
55
version:
66
description: "The Go version to use."
7-
default: "1.20.5"
7+
default: "1.20.7"
88
runs:
99
using: "composite"
1010
steps:
@@ -17,7 +17,8 @@ runs:
1717
restore-keys: |
1818
gotoolchain-${{ runner.os }}-
1919
20-
- uses: buildjet/setup-go@v4
20+
- name: Setup Go
21+
uses: buildjet/setup-go@v4
2122
with:
2223
# We do our own caching for implementation clarity.
2324
cache: false
@@ -38,24 +39,25 @@ runs:
3839
path: |
3940
${{ env.GOMODCACHE }}
4041
key: gomodcache-${{ runner.os }}-${{ hashFiles('**/go.sum') }}-${{ github.job }}
41-
restore-keys: |
42-
gomodcache-${{ runner.os }}-${{ hashFiles('**/go.sum') }}-
43-
gomodcache-${{ runner.os }}-
42+
# restore-keys aren't used because it causes the cache to grow
43+
# infinitely. go.sum changes very infrequently, so rebuilding from
44+
# scratch every now and then isn't terrible.
4445

4546
- name: Cache $GOCACHE
4647
uses: buildjet/cache@v3
4748
with:
4849
path: |
4950
${{ env.GOCACHE }}
50-
# Job name must be included in the key for effective
51-
# test cache reuse.
51+
# Job name must be included in the key for effective test cache reuse.
5252
# The key format is intentionally different than GOMODCACHE, because any
53-
# time a Go file changes we invalidate this cache, whereas GOMODCACHE
54-
# is only invalidated when go.sum changes.
55-
key: gocache-${{ runner.os }}-${{ github.job }}-${{ hashFiles('**/*.go', 'go.**') }}
53+
# time a Go file changes we invalidate this cache, whereas GOMODCACHE is
54+
# only invalidated when go.sum changes.
55+
# The number in the key is incremented when the cache gets too large,
56+
# since this technically grows without bound.
57+
key: gocache2-${{ runner.os }}-${{ github.job }}-${{ hashFiles('**/*.go', 'go.**') }}
5658
restore-keys: |
57-
gocache-${{ runner.os }}-${{ github.job }}-
58-
gocache-${{ runner.os }}-
59+
gocache2-${{ runner.os }}-${{ github.job }}-
60+
gocache2-${{ runner.os }}-
5961
6062
- name: Install gotestsum
6163
shell: bash
Lines changed: 21 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,31 @@
11
name: "Setup Node"
22
description: |
33
Sets up the node environment for tests, builds, etc.
4+
inputs:
5+
directory:
6+
description: |
7+
The directory to run the setup in.
8+
required: false
9+
default: "site"
410
runs:
511
using: "composite"
612
steps:
7-
- uses: buildjet/setup-node@v3
13+
- name: Install pnpm
14+
uses: pnpm/action-setup@v2
815
with:
9-
node-version: 16.16.0
16+
version: 8
17+
- name: Setup Node
18+
uses: buildjet/setup-node@v3
19+
with:
20+
node-version: 18.17.0
1021
# See https://github.com/actions/setup-node#caching-global-packages-data
11-
cache: "yarn"
12-
cache-dependency-path: "site/yarn.lock"
22+
cache: "pnpm"
23+
cache-dependency-path: ${{ inputs.directory }}/pnpm-lock.yaml
24+
- name: Install root node_modules
25+
shell: bash
26+
run: ./scripts/pnpm_install.sh
27+
1328
- name: Install node_modules
1429
shell: bash
15-
run: ./scripts/yarn_install.sh
30+
run: ../scripts/pnpm_install.sh
31+
working-directory: ${{ inputs.directory }}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
name: Setup sqlc
2+
description: |
3+
Sets up the sqlc environment for tests, builds, etc.
4+
runs:
5+
using: "composite"
6+
steps:
7+
- name: Setup sqlc
8+
uses: sqlc-dev/setup-sqlc@v3
9+
with:
10+
sqlc-version: "1.20.0"

.github/actions/setup-tf/action.yaml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
name: "Setup Terraform"
2+
description: |
3+
Sets up Terraform for tests, builds, etc.
4+
runs:
5+
using: "composite"
6+
steps:
7+
- name: Install Terraform
8+
uses: hashicorp/setup-terraform@v2
9+
with:
10+
terraform_version: 1.5.5
11+
terraform_wrapper: false

.github/actions/upload-datadog/action.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ runs:
2020
echo "No API key provided, skipping..."
2121
exit 0
2222
fi
23-
npm install -g @datadog/datadog-ci
23+
npm install -g @datadog/datadog-ci@2.10.0
2424
datadog-ci junit upload --service coder ./gotests.xml \
2525
--tags os:${{runner.os}} --tags runner_name:${{runner.name}}
2626
env:

.github/dependabot.yaml

Lines changed: 56 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ updates:
88
timezone: "America/Chicago"
99
labels: []
1010
commit-message:
11-
prefix: "chore"
11+
prefix: "ci"
1212
ignore:
1313
# These actions deliver the latest versions by updating the major
1414
# release tag, so ignore minor and patch versions
@@ -24,6 +24,10 @@ updates:
2424
update-types:
2525
- version-update:semver-minor
2626
- version-update:semver-patch
27+
groups:
28+
github-actions:
29+
patterns:
30+
- "*"
2731

2832
- package-ecosystem: "gomod"
2933
directory: "/"
@@ -39,6 +43,14 @@ updates:
3943
- dependency-name: "*"
4044
update-types:
4145
- version-update:semver-patch
46+
groups:
47+
otel:
48+
patterns:
49+
- "go.nhat.io/otelsql"
50+
- "go.opentelemetry.io/otel*"
51+
golang-x:
52+
patterns:
53+
- "golang.org/x/*"
4254

4355
# Update our Dockerfile.
4456
- package-ecosystem: "docker"
@@ -54,6 +66,10 @@ updates:
5466
# We need to coordinate terraform updates with the version hardcoded in
5567
# our Go code.
5668
- dependency-name: "terraform"
69+
groups:
70+
scripts-docker:
71+
patterns:
72+
- "*"
5773

5874
- package-ecosystem: "npm"
5975
directory: "/site/"
@@ -76,31 +92,55 @@ updates:
7692
- dependency-name: "@types/node"
7793
update-types:
7894
- version-update:semver-major
95+
groups:
96+
react:
97+
patterns:
98+
- "react*"
99+
- "@types/react*"
100+
xterm:
101+
patterns:
102+
- "xterm*"
103+
xstate:
104+
patterns:
105+
- "xstate"
106+
- "@xstate*"
107+
mui:
108+
patterns:
109+
- "@mui*"
110+
storybook:
111+
patterns:
112+
- "@storybook*"
113+
- "storybook*"
114+
eslint:
115+
patterns:
116+
- "eslint*"
117+
- "@eslint*"
118+
- "@typescript-eslint/eslint-plugin"
119+
- "@typescript-eslint/parser"
79120

80-
- package-ecosystem: "terraform"
81-
directory: "/examples/templates"
121+
- package-ecosystem: "npm"
122+
directory: "/offlinedocs/"
82123
schedule:
83124
interval: "monthly"
84125
time: "06:00"
85126
timezone: "America/Chicago"
127+
reviewers:
128+
- "coder/ts"
86129
commit-message:
87130
prefix: "chore"
88131
labels: []
89132
ignore:
90-
# We likely want to update this ourselves.
91-
- dependency-name: "coder/coder"
133+
# Ignore patch updates for all dependencies
134+
- dependency-name: "*"
135+
update-types:
136+
- version-update:semver-patch
137+
# Ignore major updates to Node.js types, because they need to
138+
# correspond to the Node.js engine version
139+
- dependency-name: "@types/node"
140+
update-types:
141+
- version-update:semver-major
92142

93143
# Update dogfood.
94-
- package-ecosystem: "docker"
95-
directory: "/dogfood/"
96-
schedule:
97-
interval: "weekly"
98-
time: "06:00"
99-
timezone: "America/Chicago"
100-
commit-message:
101-
prefix: "chore"
102-
labels: []
103-
104144
- package-ecosystem: "terraform"
105145
directory: "/dogfood/"
106146
schedule:
@@ -111,4 +151,5 @@ updates:
111151
prefix: "chore"
112152
labels: []
113153
ignore:
154+
# We likely want to update this ourselves.
114155
- dependency-name: "coder/coder"
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
apiVersion: cert-manager.io/v1
2+
kind: Certificate
3+
metadata:
4+
name: pr${PR_NUMBER}-tls
5+
namespace: pr-deployment-certs
6+
spec:
7+
secretName: pr${PR_NUMBER}-tls
8+
issuerRef:
9+
name: letsencrypt
10+
kind: ClusterIssuer
11+
dnsNames:
12+
- "${PR_HOSTNAME}"
13+
- "*.${PR_HOSTNAME}"

0 commit comments

Comments
 (0)