CermakM / kebechet-action

GitHub Action to trigger Kebechet Automation bot for the current repository

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

kebechet-action

GitHub Action to trigger Kebechet Automation bot for the current repository

Kebechet

I'm Kebechet, goddess of freshness. I will keep your sources and dependencies fresh and up-to-date.

Kebechet is a SourceOps bot that automates updating dependencies of your project. Currently, it supports managing and updating Python projects based on pipenv files (Pipfile and Pipfile.lock) or requirements.txt/requirements.in files (see pip-tools - Kebechet is a replacement for it)

For more information about Kebchet see the README.


SETUP

Create the SSH key (if applicable)

If you already have an SSH key associated with your GitHub account and you want to use it, you can skip this step.

See the "Generating a new SSH key" for more info.


Create the KEBECHET_SSH_PRIVATE_KEY secret

IMPORTANT: The secret has to be base64 encoded!

Encode the SSH key you want to use as such:

# Assuming that you have the key stored in ~/.ssh/kebechet_rsa
cat ~/.ssh/kebechet_rsa | base64

And set the base64 encoded key to the KEBECHET_SSH_PRIVATE_KEY secret. See "Creating and Using Secrets" for more info.


Add the Kebechet Action to a workflow

Example:

name: Kebechet

on: [issues, issue_comment]

jobs:
  build:

    runs-on: ubuntu-latest
    
    steps:
    - uses: actions/checkout@v1
    
    - name: Kebechet
      uses: cermakm/kebechet-action@master
      env:
        # secrets.GITHUB_TOKEN is autogenerated by GitHub for the current repository
        GITHUB_TOKEN: '${{ secrets.GITHUB_TOKEN }}'
      with:
        # Provide Kebechet the base64 encoded SSH key to use)
        # see https://help.github.com/en/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent for more info)
        ssh_key: '${{ secrets.KEBECHET_SSH_PRIVATE_KEY }}'

If you want to make Kebechet Action a step in your Main workflow, you can do it as such:

Example:

steps:
# This step is important to run at any point of your workflow as well, it mounts the GitHub workspace that the Kebechet assumes is present
- uses: actions/checkout@v1
- name: Kebechet
    uses: cermakm/kebechet-action@master
    env:
      # secrets.GITHUB_TOKEN is autogenerated by GitHub for the current repository
      GITHUB_TOKEN: '${{ secrets.GITHUB_TOKEN }}'
    with:
      # Provide Kebechet the SSH key to use
      # see https://help.github.com/en/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent for more info)
      ssh_key: '${{ secrets.KEBECHET_SSH_PRIVATE_KEY }}'
    # [optional] If you want to run Kebechet only on issues and issue comments, do it as such
    if: github.event_name == 'issues' || github.event_name == 'issue_comment'

USAGE

For more information about Kebchet see the README for more information and see the available managers.

To make sure everything works properly, create an issue with the title 'Kebechet info'.


Notes

To issue an update to Git repository, Kebechet creates branches in the provided repository.

About

GitHub Action to trigger Kebechet Automation bot for the current repository

License:MIT License


Languages

Language:Shell 57.9%Language:Dockerfile 42.1%