Skip to content

Commit

Permalink
[POR-997] Add CCP build to our preview env (porter-dev#2831)
Browse files Browse the repository at this point in the history
* add CCP build to our preview env
  • Loading branch information
mnafees authored Apr 7, 2023
1 parent 20b77fe commit 106023a
Show file tree
Hide file tree
Showing 2 changed files with 123 additions and 39 deletions.
87 changes: 48 additions & 39 deletions .github/workflows/porter_preview_env.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,50 +22,59 @@ jobs:
porter-preview:
runs-on: ubuntu-latest
steps:
- name: Checkout code
id: checkout-code
uses: actions/checkout@v3
- name: Create Porter preview env
id: preview
timeout-minutes: 30
uses: porter-dev/porter-preview-action@dev
with:
action_id: ${{ github.run_id }}
cluster: "2489"
host: https://dashboard.getporter.dev
installation_id: "18533943"
namespace: pr-${{ github.event.inputs.pr_number }}-porter
pr_branch_from: ${{ github.event.inputs.pr_branch_from }}
pr_branch_into: ${{ github.event.inputs.pr_branch_into }}
pr_id: ${{ github.event.inputs.pr_number }}
pr_name: ${{ github.event.inputs.pr_title }}
project: "6680"
repo_name: porter
repo_owner: porter-dev
token: ${{ secrets.PORTER_PREVIEW_6680_2489 }}
- name: Attach vcluster
run: |
sudo apt-get update
sudo apt-get install bash curl jq unzip
- name: Checkout monorepo code
id: checkout-monorepo-code
uses: actions/checkout@v3
- name: Checkout CCP code
id: checkout-ccp-code
uses: actions/checkout@v3
with:
repository: porter-dev/cluster-control-plane
token: ${{ secrets.PORTER_DEV_GITHUB_TOKEN }}
path: external/ccp
- name: Create Porter preview env
id: preview
timeout-minutes: 30
uses: porter-dev/porter-preview-action@dev
with:
action_id: ${{ github.run_id }}
cluster: "2489"
host: https://dashboard.getporter.dev
installation_id: "18533943"
namespace: pr-${{ github.event.inputs.pr_number }}-porter
pr_branch_from: ${{ github.event.inputs.pr_branch_from }}
pr_branch_into: ${{ github.event.inputs.pr_branch_into }}
pr_id: ${{ github.event.inputs.pr_number }}
pr_name: ${{ github.event.inputs.pr_title }}
project: "6680"
repo_name: porter
repo_owner: porter-dev
token: ${{ secrets.PORTER_PREVIEW_6680_2489 }}
env:
PORTER_APPLY_HONEYCOMB_PASSWORD: ${{ secrets.HONEYCOMB_PASSWORD_PREVIEW_ENVIRONMENTS }}
- name: Attach vcluster
run: |
sudo apt-get update
sudo apt-get install bash curl jq unzip
/bin/bash -c "$(curl -fsSL https://install.porter.run)"
/bin/bash -c "$(curl -fsSL https://install.porter.run)"
echo "$VCLUSTER_KUBECONFIG" > /tmp/vcluster_kubeconfig
echo "$VCLUSTER_KUBECONFIG" > /tmp/vcluster_kubeconfig
dashboard_domain=$(echo "$DOMAINS" | jq '.subdomains[] | select(test("porter-dashboard*"))')
dashboard_domain=$(sed -e 's/^"//' -e 's/"$//' <<<"$dashboard_domain")
dashboard_domain=$(echo "$DOMAINS" | jq '.subdomains[] | select(test("porter-dashboard*"))')
dashboard_domain=$(sed -e 's/^"//' -e 's/"$//' <<<"$dashboard_domain")
if [ -z "$dashboard_domain" ]; then
exit 1
fi
if [ -z "$dashboard_domain" ]; then
exit
fi
export PORTER_HOST="https://${dashboard_domain}"
export PORTER_HOST="https://${dashboard_domain}"
porter connect kubeconfig --kubeconfig /tmp/vcluster_kubeconfig
env:
PORTER_TOKEN: ${{ secrets.PREVIEW_DEPLOYMENT_PORTER_KEY }}
PORTER_PROJECT: 1
VCLUSTER_KUBECONFIG: ${{ secrets.VCLUSTER_KUBECONFIG }}
DOMAINS: ${{ steps.preview.outputs.domains }}
porter connect kubeconfig --kubeconfig /tmp/vcluster_kubeconfig
env:
PORTER_TOKEN: ${{ secrets.PREVIEW_DEPLOYMENT_PORTER_KEY }}
PORTER_PROJECT: 1
VCLUSTER_KUBECONFIG: ${{ secrets.VCLUSTER_KUBECONFIG }}
DOMAINS: ${{ steps.preview.outputs.domains }}
concurrency:
group: ${{ github.workflow }}-${{ github.event.inputs.pr_number }}
75 changes: 75 additions & 0 deletions porter.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,13 @@ builds:
env:
import_from:
- default/base-env
- name: ccp
method: docker
dockerfile: ./external/ccp/zarf/docker/Dockerfile
context: ./external/ccp
env:
import_from:
- default/ccp-base-env

apps:
- name: setup-job
Expand All @@ -23,6 +30,22 @@ apps:
helm_chart:
name: job
build_ref: job
- name: porter-ccp
depends_on:
- postgres
- nats
helm_chart:
name: web
build_ref: ccp
helm_values:
ingress:
enabled: false
service:
port: 7833
container:
port: 7833
command: ccp
args: "start --server --all-consumers"
- name: porter-dashboard
depends_on:
- postgres
Expand All @@ -49,3 +72,55 @@ addons:
postgresqlUsername: postgres
postgresqlPassword: postgres
postgresqlDatabase: postgres
- name: opentelemetry-collector
helm_chart:
name: opentelemetry-collector
url: https://open-telemetry.github.io/opentelemetry-helm-charts
helm_values:
mode: daemonset
config:
exporters:
otlp/honeycomb:
endpoint: api.honeycomb.io:443
headers:
x-honeycomb-team: p4Xkp5DeAOoDvwDCM7uJNH
receivers:
jaeger: null
otlp:
protocols:
http: null
prometheus: null
zipkin: null
service:
pipelines:
logs: null
metrics: null
traces:
exporters:
- otlp/honeycomb
processors:
- batch
receivers:
- otlp
- name: nats
helm_chart:
name: nats
url: https://nats-io.github.io/k8s/helm/charts
helm_values:
cluster:
enabled: true
replicas: 3
nats:
jetstream:
enabled: true
memStorage:
enabled: true
size: 2Gi
fileStorage:
enabled: false
websocket:
enabled: true
port: 4223
noTLS: true
natsbox:
enabled: true

0 comments on commit 106023a

Please sign in to comment.