Skip to content

Commit 2b78a51

Browse files
committed
Merge remote-tracking branch 'origin/main' into jjs/15065
2 parents 6616ddc + 7da231b commit 2b78a51

File tree

5 files changed

+838
-93
lines changed

5 files changed

+838
-93
lines changed

agent/agent.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1670,7 +1670,7 @@ func (a *agent) manageProcessPriority(ctx context.Context, debouncer *logDebounc
16701670
}
16711671

16721672
score, niceErr := proc.Niceness(a.syscaller)
1673-
if !isBenignProcessErr(niceErr) {
1673+
if niceErr != nil && !isBenignProcessErr(niceErr) {
16741674
debouncer.Warn(ctx, "unable to get proc niceness",
16751675
slog.F("cmd", proc.Cmd()),
16761676
slog.F("pid", proc.PID),
@@ -1689,7 +1689,7 @@ func (a *agent) manageProcessPriority(ctx context.Context, debouncer *logDebounc
16891689

16901690
if niceErr == nil {
16911691
err := proc.SetNiceness(a.syscaller, niceness)
1692-
if !isBenignProcessErr(err) {
1692+
if err != nil && !isBenignProcessErr(err) {
16931693
debouncer.Warn(ctx, "unable to set proc niceness",
16941694
slog.F("cmd", proc.Cmd()),
16951695
slog.F("pid", proc.PID),
@@ -1703,7 +1703,7 @@ func (a *agent) manageProcessPriority(ctx context.Context, debouncer *logDebounc
17031703
if oomScore != unsetOOMScore && oomScore != proc.OOMScoreAdj && !isCustomOOMScore(agentScore, proc) {
17041704
oomScoreStr := strconv.Itoa(oomScore)
17051705
err := afero.WriteFile(a.filesystem, fmt.Sprintf("/proc/%d/oom_score_adj", proc.PID), []byte(oomScoreStr), 0o644)
1706-
if !isBenignProcessErr(err) {
1706+
if err != nil && !isBenignProcessErr(err) {
17071707
debouncer.Warn(ctx, "unable to set oom_score_adj",
17081708
slog.F("cmd", proc.Cmd()),
17091709
slog.F("pid", proc.PID),

docs/README.md

Lines changed: 113 additions & 84 deletions
Original file line numberDiff line numberDiff line change
@@ -1,116 +1,145 @@
1-
# About Coder
1+
# About
22

3-
<!-- Warning for docs contributors: The first route in manifest.json must be titled "About" for the static landing page to work correctly. -->
3+
<!-- Warning for docs contributors: The first route in manifest.json must be titled "About" for the static landing page to work correctly. -->
44

5-
Coder is an open-source platform for creating and managing developer workspaces
6-
on your preferred clouds and servers.
5+
Coder is a self-hosted, open source, cloud development environment that works
6+
with any cloud, IDE, OS, Git provider, and IDP.
77

8-
<p align="center">
9-
<img src="./images/hero-image.png">
10-
</p>
8+
![Screenshots of Coder workspaces and connections](./images/hero-image.png)_Screenshots of Coder workspaces and connections_
119

12-
By building on top of common development interfaces (SSH) and infrastructure
13-
tools (Terraform), Coder aims to make the process of **provisioning** and
14-
**accessing** remote workspaces approachable for organizations of various sizes
15-
and stages of cloud-native maturity.
10+
Coder is built on common development interfaces and infrastructure tools to
11+
make the process of provisioning and accessing remote workspaces approachable
12+
for organizations of various sizes and stages of cloud-native maturity.
1613

17-
<blockquote class="warning">
18-
<p>
19-
If you are a Coder v1 customer, view <a href="https://coder.com/docs/coder">the docs</a> or <a href="https://coder.com/docs/coder/latest/guides/v2-faq">the sunset plans</a>.
20-
</p>
21-
</blockquote>
14+
## IDE support
2215

23-
## How it works
16+
![IDE icons](./images/ide-icons.svg)
2417

25-
Coder workspaces are represented with Terraform, but no Terraform knowledge is
26-
required to get started. We have a
27-
[database](https://registry.coder.com/templates) of pre-made templates built
28-
into the product.
18+
You can use:
2919

30-
<p align="center">
31-
<img src="./images/providers-compute.png">
32-
</p>
20+
- Any Web IDE, such as
3321

34-
Coder workspaces don't stop at compute. You can add storage buckets, secrets,
35-
sidecars and whatever else Terraform lets you dream up.
22+
- [code-server](https://github.com/coder/code-server)
23+
- [JetBrains Projector](https://github.com/JetBrains/projector-server)
24+
- [Jupyter](https://jupyter.org/)
25+
- And others
3626

37-
[Learn more about templates.](./admin/templates/index.md)
27+
- Your existing remote development environment:
3828

39-
## IDE Support
29+
- [JetBrains Gateway](https://www.jetbrains.com/remote-development/gateway/)
30+
- [VS Code Remote](https://code.visualstudio.com/docs/remote/ssh-tutorial)
31+
- [Emacs](./user-guides/workspace-access/emacs-tramp.md)
4032

41-
You can use any [Web IDE](./admin/templates/extending-templates/web-ides.md)
42-
([code-server](https://github.com/coder/code-server),
43-
[projector](https://github.com/JetBrains/projector-server),
44-
[Jupyter](https://jupyter.org), etc.),
45-
[JetBrains Gateway](https://www.jetbrains.com/remote-development/gateway/),
46-
[VS Code Remote](https://code.visualstudio.com/docs/remote/ssh-tutorial) or even
47-
a file sync such as [mutagen](https://mutagen.io/).
48-
49-
<p align="center">
50-
<img src="./images/ide-icons.svg" height=72>
51-
</p>
33+
- A file sync such as [Mutagen](https://mutagen.io/)
5234

5335
## Why remote development
5436

55-
Migrating from local developer machines to workspaces hosted by cloud services
56-
is an
57-
[increasingly common solution for developers](https://blog.alexellis.io/the-internet-is-my-computer/)
58-
and
59-
[organizations alike](https://slack.engineering/development-environments-at-slack).
60-
There are several benefits, including:
37+
Remote development offers several benefits for users and administrators, including:
38+
39+
- **Increased speed**
40+
41+
- Server-grade cloud hardware speeds up operations in software development, from
42+
loading the IDE to compiling and building code, and running large workloads
43+
such as those for monolith or microservice applications.
44+
45+
- **Easier environment management**
46+
47+
- Built-in infrastructure tools such as Terraform, nix, Docker, Dev Containers, and others make it easier to onboard developers with consistent environments.
6148

62-
- **Increased speed:** Server-grade compute speeds up operations in software
63-
development, such as IDE loading, code compilation and building, and the
64-
running of large workloads (such as those for monolith or microservice
65-
applications)
49+
- **Increased security**
6650

67-
- **Easier environment management:** Tools such as Terraform, nix, Docker,
68-
devcontainers, and so on make developer onboarding and the troubleshooting of
69-
development environments easier
51+
- Centralize source code and other data onto private servers or cloud services instead of local developers' machines.
52+
- Manage users and groups with [SSO](./admin/users/oidc-auth.md) and [Role-based access controlled (RBAC)](./admin/users/groups-roles.md#roles).
7053

71-
- **Increase security:** Centralize source code and other data onto private
72-
servers or cloud services instead of local developer machines
54+
- **Improved compatibility**
7355

74-
- **Improved compatibility:** Remote workspaces share infrastructure
75-
configuration with other development, staging, and production environments,
76-
reducing configuration drift
56+
- Remote workspaces can share infrastructure configurations with other
57+
development, staging, and production environments, reducing configuration
58+
drift.
7759

78-
- **Improved accessibility:** Devices such as lightweight notebooks,
79-
Chromebooks, and iPads can connect to remote workspaces via browser-based IDEs
80-
or remote IDE extensions
60+
- **Improved accessibility**
61+
- Connect to remote workspaces via browser-based IDEs or remote IDE
62+
extensions to enable developers regardless of the device they use, whether
63+
it's their main device, a lightweight laptop, Chromebook, or iPad.
64+
65+
Read more about why organizations and engineers are moving to remote
66+
development on [our blog](https://coder.com/blog), the
67+
[Slack engineering blog](https://slack.engineering/development-environments-at-slack),
68+
or from [OpenFaaS's Alex Ellis](https://blog.alexellis.io/the-internet-is-my-computer/).
8169

8270
## Why Coder
8371

84-
The key difference between Coder OSS and other remote IDE platforms is the added
85-
layer of infrastructure control. This additional layer allows admins to:
72+
The key difference between Coder and other remote IDE platforms is the added
73+
layer of infrastructure control.
74+
This additional layer allows admins to:
8675

87-
- Support ARM, Windows, Linux, and macOS workspaces
88-
- Modify pod/container specs (e.g., adding disks, managing network policies,
89-
setting/updating environment variables)
90-
- Use VM/dedicated workspaces, developing with Kernel features (no container
91-
knowledge required)
76+
- Simultaneously support ARM, Windows, Linux, and macOS workspaces.
77+
- Modify pod/container specs, such as adding disks, managing network policies, or
78+
setting/updating environment variables.
79+
- Use VM or dedicated workspaces, developing with Kernel features (no container
80+
knowledge required).
9281
- Enable persistent workspaces, which are like local machines, but faster and
93-
hosted by a cloud service
82+
hosted by a cloud service.
83+
84+
## How much does it cost?
85+
86+
Coder is free and open source under
87+
[GNU Affero General Public License v3.0](https://github.com/coder/coder/blob/main/LICENSE).
88+
All developer productivity features are included in the Open Source version of
89+
Coder.
90+
A [Premium license is available](https://coder.com/pricing#compare-plans) for enhanced
91+
support options and custom deployments.
92+
93+
## How does Coder work
94+
95+
Coder workspaces are represented with Terraform, but you don't need to know
96+
Terraform to get started.
97+
We have a [database of production-ready templates](https://registry.coder.com/templates)
98+
for use with AWS EC2, Azure, Google Cloud, Kubernetes, and more.
99+
100+
![Providers and compute environments](./images/providers-compute.png)_Providers and compute environments_
101+
102+
Coder workspaces can be used for more than just compute.
103+
You can use Terraform to add storage buckets, secrets, sidecars,
104+
[and more](https://developer.hashicorp.com/terraform/tutorials).
105+
106+
Visit the [templates documentation](./admin/templates/index.md) to learn more.
107+
108+
## What Coder is not
109+
110+
- Coder is not an infrastructure as code (IaC) platform.
111+
112+
- Terraform is the first IaC _provisioner_ in Coder, allowing Coder admins to
113+
define Terraform resources as Coder workspaces.
114+
115+
- Coder is not a DevOps/CI platform.
116+
117+
- Coder workspaces can be configured to follow best practices for
118+
cloud-service-based workloads, but Coder is not responsible for how you
119+
define or deploy the software you write.
120+
121+
- Coder is not an online IDE.
122+
123+
- Coder supports common editors, such as VS Code, vim, and JetBrains,
124+
all over HTTPS or SSH.
94125

95-
Coder includes
96-
[production-ready templates](https://registry.coder.com/templates) for use with
97-
AWS EC2, Azure, Google Cloud, Kubernetes, and more.
126+
- Coder is not a collaboration platform.
98127

99-
## What Coder is _not_
128+
- You can use Git with your favorite Git platform and dedicated IDE
129+
extensions for pull requests, code reviews, and pair programming.
100130

101-
- Coder is not an infrastructure as code (IaC) platform. Terraform is the first
102-
IaC _provisioner_ in Coder, allowing Coder admins to define Terraform
103-
resources as Coder workspaces.
131+
- Coder is not a SaaS/fully-managed offering.
132+
- Coder is a [self-hosted](<https://en.wikipedia.org/wiki/Self-hosting_(web_services)>)
133+
solution.
134+
You must host Coder in a private data center or on a cloud service, such as
135+
AWS, Azure, or GCP.
104136

105-
- Coder is not a DevOps/CI platform. Coder workspaces can follow best practices
106-
for cloud service-based workloads, but Coder is not responsible for how you
107-
define or deploy the software you write.
137+
## Using Coder v1?
108138

109-
- Coder is not an online IDE. Instead, Coder supports common editors, such as VS
110-
Code, vim, and JetBrains, over HTTPS or SSH.
139+
If you're a Coder v1 customer, view [the v1 documentation](https://coder.com/docs/v1)
140+
or [the v2 migration guide and FAQ](https://coder.com/docs/v1/guides/v2-faq).
111141

112-
- Coder is not a collaboration platform. You can use git and dedicated IDE
113-
extensions for pull requests, code reviews, and pair programming.
142+
## Up next
114143

115-
- Coder is not a SaaS/fully-managed offering. You must host Coder on a cloud
116-
service (AWS, Azure, GCP) or your private data center.
144+
- Learn about [Templates](./admin/templates/index.md)
145+
- [Install Coder](./install/index.md)

docs/install/releases.md

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,13 @@ We recommend enterprise customers test the compatibility of new releases with
77
their infrastructure on a staging environment before upgrading a production
88
deployment.
99

10-
We support two release channels: [mainline](#mainline-releases) for the bleeding
11-
edge version of Coder and [stable](#stable-releases) for those with lower
10+
We support two release channels:
11+
[mainline](https://github.com/coder/coder/releases/tag/v2.16.0) for the bleeding
12+
edge version of Coder and
13+
[stable](https://github.com/coder/coder/releases/latest) for those with lower
1214
tolerance for fault. We field our mainline releases publicly for one month
13-
before promoting them to stable.
15+
before promoting them to stable. The version prior to stable receives patches
16+
only for security issues or CVEs.
1417

1518
### Mainline releases
1619

@@ -23,10 +26,14 @@ before promoting them to stable.
2326

2427
- Safest upgrade/installation path
2528
- May not include the latest features
26-
- Security vulnerabilities and major bugfixes are supported
29+
- All bugfixes and security patches are supported
30+
31+
### Security Support
32+
33+
- In-product security vulnerabilities and CVEs are supported
2734

28-
> Note: We support major security vulnerabilities (CVEs) for the past three
29-
> versions of Coder.
35+
> For more information on feature rollout, see our
36+
> [feature stages documentation](../contributing/feature-stages.md).
3037
3138
## Installing stable
3239

0 commit comments

Comments
 (0)