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

Database Access GitHub Action #2

Open
strideynet opened this issue Nov 29, 2022 · 2 comments
Open

Database Access GitHub Action #2

strideynet opened this issue Nov 29, 2022 · 2 comments

Comments

@strideynet
Copy link
Contributor

Aim to deliver an experience similar to that delivered by gravitational/teleport-actions#8 (Kubernetes access) for Database Access.

steps:
  - name: Install Kubectl
    uses: azure/setup-kubectl@v3
  - name: Install Teleport
    uses: gravitational/teleport-actions/setup@v1
    with:
      version: 11.0.3
  - name: Authorize against Teleport
    uses: gravitational/teleport-actions/auth-db@v1
    with:
      # Specify the publically accessible address of your Teleport proxy.
      proxy: tele.example.com:443
      # Specify the name of the join token for your bot.
      token: my-github-join-token
      database-service: my-teleport-db-service
      database: my-db
      database-username: my-username

The action should:

  • Fetch certificates for the named database
  • Use tsh proxy db/tbot proxy db to open a proxied port that other steps can connect to.
  • Use GHA action outputs to provide paths to ports and generated credentials the client needs to use.

Use case:

  • Running migrations from a tool like Liquibase.

References:

@gunzy83
Copy link

gunzy83 commented Aug 8, 2023

An additional use case for this would be to run a proxy to allow configuration of databases and users etc with a tool like Terraform or Pulumi. I have done this in the past with Ansible as well.

@strideynet
Copy link
Contributor Author

An additional use case for this would be to run a proxy to allow configuration of databases and users etc with a tool like Terraform or Pulumi. I have done this in the past with Ansible as well.

This is a super interesting use case - thanks for raising it.

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

No branches or pull requests

2 participants