156 Commits

Author SHA1 Message Date
Thomas Schubart
3fb59ce020 Ensure Gokart can load metadata 2022-04-04 07:39:17 +05:30
Christian Weichel
3d6053242f [registry-facade] Support Redis sentinel clients 2022-04-01 21:13:15 +05:30
Christian Weichel
65d73af7b6 [registry-facade] Configure IPFS address 2022-04-01 21:13:15 +05:30
Simon Emms
91caa88bc9 [kots]: add distribution check to the KOTS preflights
Currently, this only checks that it's not OpenShift. This may be
expanded in future
2022-04-01 17:35:15 +05:30
Filip Troníček
eede5140d2 Use vscode-cdn.net in configmaps 2022-04-01 14:11:14 +05:30
Simon Emms
d9666d8aaf [installer]: remove invalid repo from mirror list 2022-04-01 13:45:14 +05:30
Simon Emms
cf297d4948 [installer]: add a mirror kots command to generate the additional images
The additional images are a way of telling Replicated which images are
required to make an air-gapped installation
2022-04-01 13:45:14 +05:30
Filip Troníček
d00bdecdb8 [code] Update stable to 1.66.0 2022-03-31 20:10:14 +05:30
Simon Emms
c7efcd6254 [install]: document installing via kots 2022-03-30 20:54:13 +05:30
Pudong Zheng
b2788a5c05 [installer] Add docs for workspace SSH access
Co-authored-by: Cornelius A. Ludmann <cornelius@gitpod.io>
2022-03-30 14:24:13 +05:30
Manuel Alejandro de Brito Fontes
e894487df2 [ws-daemon] Configure readiness probe 2022-03-29 22:20:13 +05:30
Manuel Alejandro de Brito Fontes
b01d060546 [registry-facade] Configure readiness probe 2022-03-29 22:20:13 +05:30
Manuel Alejandro de Brito Fontes
baa2a9af12 [installer] Configure-readiness-probes.patch 2022-03-29 22:20:13 +05:30
Nandaja Varma
4b35a6f8ec [installer] set the ServiceType as LB for ws-proxy 2022-03-29 13:26:12 +05:30
Simon Emms
eac94bc682 [kots]: lint the manifests 2022-03-28 14:56:11 +05:30
Simon Emms
da68928bb8 [kots]: add license headers 2022-03-28 14:56:11 +05:30
Manuel Alejandro de Brito Fontes
698ad17d2b Update go dependencies 2022-03-27 20:56:10 +05:30
Manuel Alejandro de Brito Fontes
709583fbc5 [ws-proxy] Comfigure kube-rbac 2022-03-22 16:06:28 +05:30
Simon Emms
89ac56fc98 [kots]: add check for default storage class 2022-03-22 13:26:28 +05:30
Simon Emms
a77f34d8a1 [kots]: add memory check to preflights 2022-03-22 13:26:28 +05:30
Simon Emms
717ceb0e2f [kots]: escape golang template variables for Helm resources
Helm parses Golang template variables when rendering the Kubernetes
objects. For the ws-manager config (and potentially others), this
breaks as this includes Golang template variables which is interpolated
at runtime.

Helm allows for escaping of Golang template variables if wrapped in
"{{``}}". The sed command searches for any line containing "{{" and
escapes it.
2022-03-22 11:16:28 +05:30
Tarun Pothulapati
7a20cfa72a [kots] Add a pre-flight check for cert-manager
With https://github.com/gitpod-io/gitpod/pull/8785, We expect users
to install their own `cert-manager` install. This PR adds a new
pre-flight check to verify the existence of the `cert-manager`.

As there is no general way to check for the existence of `cert-manager`,
We check for the `certificates.cert-manager.io` CRD instead.

Signed-off-by: Tarun Pothulapati <tarun@gitpod.io>
2022-03-21 14:12:27 +05:30
Simon Emms
22d2b89cc5 [installer]: handle different line endings on apiVersion extraction 2022-03-18 18:47:25 +05:30
Simon Emms
84f653eebf [kots]: remove wait-for-jobs
As we're deleting jobs on completion, the Helm command can error
wrongly if the job is deleted before Helm detects it's completed.
2022-03-18 13:55:24 +05:30
Simon Emms
1ab987887e [kots]: remove GCP DNS resolver
This is a leftover from the cert-manager removal
2022-03-18 03:37:24 +05:30
Simon Emms
2f52899595 [installer]: allow for minified config YAML
The regex for the `apiVersion` errored if the YAML was minified, which
is what we're using in KOTS installation job.
2022-03-16 17:18:23 +05:30
Tarun Pothulapati
783c8d6ed3 [kots] remove cert-manager from Gitpod package
Currently, We include `cert-manager` instance into the
Gitpod kots package, and install it whenever Gitpod installation
is requested.

This causes the following problems:

- `cert-manager` is a separate beast on its own, There are numerous
configurations that might be needed to be set to make it run correctly.
- A lot users could have already have it installed, and have to
  struggle to get Gitpod up and running in those cases.

To solve them, We could either provide all the configurations of
`cert-manager` into the Gitpod package to cater users with all
config needs or remove the package and expect `cert-manager` as a
pre-requisite and make sure its documented.

The latter feels better as it removes the maintaince of cert-manager for
us while also allowing users to have specific configuration. The install
path for `cert-manager` is [also pretty well documented](https://cert-manager.io/docs/installation/)
with all the [changes needed based on the cluster environment](https://cert-manager.io/docs/installation/compatibility/).

This PR also removes the cert-manager issuers and updates the config to allow
users to use pre-configured resources

Signed-off-by: Tarun Pothulapati <tarun@gitpod.io>
2022-03-16 14:22:22 +05:30
Simon Emms
86b5d8a922 [kots]: convert Installer job to use Helm
This allows for automatic deletion of resources that are no longer
used
2022-03-15 21:38:22 +05:30
Simon Emms
d10a3d083a [installer]: add helm to image 2022-03-15 21:38:22 +05:30
Simon Emms
99e0371787 [licensor]: remove prebuilds from the team level license 2022-03-14 20:14:21 +05:30
Nandaja Varma
6b2a8c15cc [installer] explain InstallerKind in README
## Description
<!-- Describe your changes in detail -->
Updating the Installer README to include a small note on what each `InstallationKind` signifies

## Related Issue(s)
<!-- List the issue(s) this PR solves -->
NA

## How to test
NA

## Release Notes
<!--
  Add entries for the CHANGELOG.md or "NONE" if there aren't any user facing changes.
  Each line becomes a separate entry.
  Format: [!<optional for breaking>] <description>
  Example: !basic auth is no longer supported
  See https://www.notion.so/gitpod/Release-Notes-513a74fdd23b4cb1b3b3aefb1d34a3e0
-->
```release-note
NONE
```

## Documentation
<!--
Does this PR require updates to the documentation at www.gitpod.io/docs?
* Yes
  * 1. Please create a docs issue: https://github.com/gitpod-io/website/issues/new?labels=documentation&template=DOCS-NEW-FEATURE.yml&title=%5BDocs+-+New+Feature%5D%3A+%3Cyour+feature+name+here%3E
  * 2. Paste the link to the docs issue below this comment
* No
  * Are you sure? If so, nothing to do here.
-->
No
2022-03-11 20:54:18 +05:30
mustard
8384e7c356 [code] update stable to 1.65.2 2022-03-11 13:52:18 +05:30
Simon Emms
bcf72bce58 [kots]: add standard labels to KOTS manifests 2022-03-11 13:32:18 +05:30
Cornelius A. Ludmann
a9715ee9e6 [installer] Add air-gap instructions
/werft no-preview
2022-03-09 23:55:16 +05:30
Simon Emms
754114d860 [kots]: create dev channels in KOTS and formalise the release process 2022-03-09 20:56:16 +05:30
Nandaja Varma
a019055318 [installer] (in)validate the unknown Config fields 2022-03-09 20:12:16 +05:30
Andrew Farries
54a765d321 Add rate limits for prebuilds
Prebuilds are rate-limited to N in the last S seconds on a rolling
window basis.
By default, 50 prebuilds are allowed in a 1 minute window.
A configuration property `prebuildLimiter` is added which controls
default rate limit but allows for explicit overrides by cloneURL.
2022-03-08 19:40:15 +05:30
Simon Emms
d469aa667b [kots]: make the self-hosted cert more explicitly selectable
The previous "in-cluster" naming still required the config to receive
LetsEncrypt variables. This has now been switched to a "select self-signed"
or "use a valid cert" flow
2022-03-08 17:01:15 +05:30
Simon Emms
65cd121d82 [kots]: add workaround for 8529
The Go library has a misconfiguration which adds in "replicas"
and "availableReplicas" to the OpenVSX Proxy StatefulSet. This
can cause validation issues dependent upon the version of Kubernetes
that's being used.

This removes the block from the rendered Kubernetes objects which
is the expected behaviour.
2022-03-08 16:42:15 +05:30
Nandaja
ede4b4719d [readme] fix typos in READMEs 2022-03-07 22:08:14 +05:30
Simon Emms
840d29a151 [installer]: add annotation to make DB resources restart if changes 2022-03-07 17:38:14 +05:30
Manuel Alejandro de Brito Fontes
103f8351ad [installer] Add network policy for coredns 2022-03-07 13:13:14 +05:30
mustard
6c71369758 [code] update stable to 1.65 2022-03-05 02:08:11 +05:30
Manuel Alejandro de Brito Fontes
6d595267cc Enable access to kube-dns 2022-03-04 20:40:11 +05:30
Manuel Alejandro de Brito Fontes
2e44194d70 Add ws-manager egress rule 2022-03-04 20:40:11 +05:30
Manuel Alejandro de Brito Fontes
626a6f4958 Add egress rule to allow access to kube-dns 2022-03-04 20:40:11 +05:30
Manuel Alejandro de Brito Fontes
29f2c2356f [installer] Registry facade should not use a port from node ports range 2022-03-04 20:40:11 +05:30
Manuel Alejandro de Brito Fontes
44ef47089b Remove unused labels 2022-03-04 13:42:11 +05:30
Christian Weichel
5702a9c74c [iws] Prepare cgroup when prearing for user NS 2022-03-04 04:08:11 +05:30
Manuel Alejandro de Brito Fontes
89105f8628 Update signatures due to k8s v1.23 changes 2022-03-03 18:46:10 +05:30