Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add workflow to use loadbalancer as a tunnel to juju controller on k8s #314

Merged
merged 1 commit into from
Oct 3, 2023

Conversation

cderici
Copy link

@cderici cderici commented Sep 22, 2023

Description

This is doing precisely the same scenario that's explained in this discourse post.

Roughly the steps are:

  • bootstrap a Juju controller on microk8s
  • enable ingress & metallb on microk8s
  • bring up a loadbalancer service on microk8s in the controller's namespace
  • get the external IP of that lb service
  • write a terraform plan that uses that IP to talk to the controller
  • add a model and deploy a charm

Type of change

  • Maintenance work (repository related, like Github actions, or revving the Go version, etc.)

Environment

  • Juju controller version: 2.9

  • Terraform version: 1.5

QA steps

No manual QA needed, just check that the github action is doing what it supposed to do.

Additional notes

JUJU-3918

@cderici cderici added this to the 0.10.0 milestone Sep 22, 2023
push:
branches:
- "main"
paths-ignore:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add CHANGELOG.md and the examples directory for both cases of pull_request and push. We should do that for all the workflows really.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@cderici this one needs to be resolved please

.github/workflows/k8s_tunnel.yml Show resolved Hide resolved
.github/workflows/k8s_tunnel.yml Show resolved Hide resolved
.github/workflows/k8s_tunnel.yml Show resolved Hide resolved
echo "JUJU_USERNAME=$(juju show-controller | yq .$CONTROLLER.account.user)" >> $GITHUB_ENV
echo "JUJU_PASSWORD=$(cat ~/.local/share/juju/accounts.yaml | yq .controllers.$CONTROLLER.password)" >> $GITHUB_ENV
echo "JUJU_CA_CERT<<EOF" >> $GITHUB_ENV
juju show-controller | yq .$CONTROLLER.details.ca-cert >> $GITHUB_ENV
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

where do juju install and juju bootstrap happen?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the charmed-kubernetes/actions-operator@main action

.github/workflows/k8s_tunnel.yml Outdated Show resolved Hide resolved
.github/workflows/k8s_tunnel.yml Outdated Show resolved Hide resolved
@cderici cderici force-pushed the controller-k8s-lb-tunnel-scenario branch from 9f90daa to e22feda Compare October 2, 2023 16:55
@cderici cderici force-pushed the controller-k8s-lb-tunnel-scenario branch from e68a721 to ce82d7c Compare October 3, 2023 00:11
@cderici cderici requested a review from hmlanigan October 3, 2023 00:57
@cderici cderici merged commit 2b66e11 into juju:main Oct 3, 2023
16 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants