Skip to content

jungaretti/bacon-deploy-action

Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Bacon Deploy Action

Deploy DNS records to Porkbun with Bacon and GitHub Actions.

Usage

Sign into Porkbun's website and generate a new API keyset for your account. Read the "Generating API Keys" section of Porkbun's docs for more detailed instructions. Be sure to enable API access for the domain(s) that you would like to manage with Bacon.

Create encrypted repository secrets to store your Porkbun API keys and pass them to this action using ${{ secrets.YOUR_SECRET_NAME }}.

Example

on:
  push:
    branches:
      - main

jobs:
  deploy:
    name: Deploy DNS Records
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - uses: jungaretti/bacon-deploy-action@v1
        with:
          api-key: ${{ secrets.PORKBUN_API_KEY }}
          secret-key: ${{ secrets.PORKBUN_SECRET_KEY }}
          config: example-com.yml
          create: true
          delete: true

See jungaretti/dns for a more detailed example.

Inputs

Required

These inputs are required to use this action. You must provide them in your workflow file.

api-key

Your Porkbun API key. This input is required.

secret-key

Your Porkbun API secret key. This input is required.

config

Path of a Bacon config file to deploy. This input is required.

Optional

These inputs are optional and have default values.

create

Flag to disable dry-run creations and create new records. The default value is false.

delete

Flag to disable dry-run deletions and delete outdated records. The default value is false.

version

The version of Bacon to download and use. The default value is latest. To use a specific release of Bacon, choose from the releases on jungaretti/bacon and use the full tag name (e.g. v1.2) as the value for this input.