Skip to content

Latest commit

 

History

History
82 lines (68 loc) · 4.06 KB

README.md

File metadata and controls

82 lines (68 loc) · 4.06 KB

Nightly Build

Example repo demonstrating different types of automated tasks and CI integrations

Examples Included

  • Simple GitHub Actions workflow examples
  • ktlint running in CI
  • Gradle task to copy a pre-push git hook that validates ktlint
  • .gitignore file which allows code styles, scopes, templates, etc to be tracked
  • Pull Request template for GitHub
  • Bug Report & Feature Issue templates for GitHub
  • Danger integration to report APK size
  • Danger integration to warn if WIP
  • Danger integration to thank PR author
  • Danger integration to add inline ktlint issue comments
  • Danger integration to warn about missing PR description
  • GitHub Actions workflow to check for dependency updates every day at 8:00

Triggering Repository_Dispatch Workflows

Running the following curl command will trigger 2 different workflows:

  • triggered_example.yml
  • triggerable_tasks.yml
curl -H "Accept: application/vnd.github.everest-preview+json" \
    -H "Authorization: token <your-token-here>" \
    --request POST \
    --data '{"event_type": "do-something"}' \
    https://api.github.com/repos/n8ebel/GitHubActionsAutomationSandbox/dispatches

With this command, the triggerable_tasks.yml workflow will run, but several of the steps will not run because the repository_dispath event didn't have the required properties passed with it.

To run the full triggerable_tasks.yml workflow, run the following curl command:

curl -H "Accept: application/vnd.github.everest-preview+json" \
    -H "Authorization: token <your-token-here>" \
    --request POST \
    --data '{"event_type": "do-something", "client_payload": { "text": "a title"}}' \
    https://api.github.com/repos/n8ebel/GitHubActionsAutomationSandbox/dispatches

Triggering Workflow_Dispatch Events

Workflows configured to run in response to workflow_dispatch events may be triggered in 2 ways:

  • using the GitHub Actions api
  • from the GitHub Actions UI in your repository

To trigger the workflow_dispatch_example.yml workflow, the following curl can be used:

curl -H "Accept: application/vnd.github.everest-preview+json" \
    -H "Authorization: token <your-token-here>" \
    --request POST \
    --data '{
              "ref": "main",
              "inputs":{
                "input1":"some value",
                "input2":"some value 2"
              }
            }' \
    https://api.github.com/repos/n8ebel/GitHubActionsAutomationSandbox/actions/workflows/workflow_dispatch_example.yml/dispatches
  • The ref input corresponds to the branch, tag, or commit you want the workflow to be run on.
  • The inputs input corresponds with the inputs defined in the workflow file, and with what is present in the UI when triggering the workflow from GitHub

Resources