https://github.com/gitpod-io/gitbot
GitHub bot for gitpod
https://github.com/gitpod-io/gitbot
Last synced: 8 months ago
JSON representation
GitHub bot for gitpod
- Host: GitHub
- URL: https://github.com/gitpod-io/gitbot
- Owner: gitpod-io
- Created: 2021-01-30T17:39:09.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2023-12-08T13:20:16.000Z (over 2 years ago)
- Last Synced: 2025-10-09T06:53:49.722Z (9 months ago)
- Language: Go
- Size: 238 KB
- Stars: 13
- Watchers: 6
- Forks: 6
- Open Issues: 13
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Gitbot keeps a clean shop
Gitbot is the prow installation used for developing Gitpod. It automates PR handling and the likes.
It's available at https://prow.gitpod-dev.com
## HowTo
### Update the config?
Raise a PR that makes changes to `config/config.yaml` or `config/plugins.yaml`. Once that PR is merged, prow will pick up the changes automatically.
### Update the kubernetes objects?
```bash
gcloud auth login
gcloud container clusters get-credentials prow --zone europe-west1-b --project gitpod-core-dev
kubectl config set-context --current --namespace=prow
sh apply.sh
```
### Update the custom plugins?
```bash
# set up creds for pushing the new image
gcloud auth login
gcloud auth configure-docker
# rebuild the plugin (e.g. groundwork)
cd plugins/groundwork
./build.sh
# restart the plugin deployment
gcloud container clusters get-credentials prow --zone europe-west1-b --project gitpod-core-dev
kubectl config set-context --current --namespace=prow
kubectl rollout restart deployment groundwork
```
### How was this installed originally
```bash
gcloud auth login
gcloud config set project gitpod-core-dev
export ZONE=europe-west1-b
export PROJECT=gitpod-core-dev
gcloud container --project "${PROJECT}" clusters create prow --zone "${ZONE}" --machine-type n1-standard-4 --num-nodes 2
gcloud iam service-accounts create prow-gcs-publisher
identifier="$( gcloud iam service-accounts list --filter 'name:prow-gcs-publisher' --format 'value(email)' )"
gsutil mb gs://gitpod-prow-artifacts/
gsutil iam ch allUsers:objectViewer gs://gitpod-prow-artifacts
gsutil iam ch "serviceAccount:${identifier}:objectAdmin" gs://gitpod-prow-artifacts
gcloud iam service-accounts keys create --iam-account "${identifier}" service-account.json
kubectl apply -f prow.yaml
kubectl -n test-pods create secret generic gcs-credentials --from-file=service-account.json
rm service-account.json
gsutil mb gs://gitpod-prow-tide/
gsutil iam ch allUsers:objectViewer gs://gitpod-prow-tide
gsutil iam ch "serviceAccount:${identifier}:objectAdmin" gs://gitpod-prow-tide
gsutil mb gs://gitpod-prow-statusreconciler/
gsutil iam ch allUsers:objectViewer gs://gitpod-prow-stausreconciler
gsutil iam ch allUsers:objectViewer gs://gitpod-prow-statusreconciler/
gsutil iam ch "serviceAccount:${identifier}:objectAdmin" gs://gitpod-prow-statusreconciler/
for i in $(ls prow/*.yaml); do kubectl apply -f $i; done
```