Setup GitHub Actions to validate repository links2021-02-11
I think there’s a movement to move some continuous integration from Travis CI to GitHub Actions.
So here’s a post on how I converted one of my repositories, first by reviewing some of the GitHub interfaces and then creating it through the terminal.
Going there, you’re shown a screen talking about workflows here and there. If you haven’t set one of these up, this page should be mostly blank.
There is a handy workflow template that GitHub starts up for you if you click on “New Workflow”. Although it will be unaccessible for you, my new workflow link would look like this:
There is also a Quickstart for GitHub Actions available.
But going through and creating this workflow, I found this page “Workflow syntax for GitHub Actions” the most useful. The documentation is very clear on what is what once you get used to reading YAML syntax.
From the terminal, you’ll need to create a folder called
.github/ directory. If you’re in the root of your project, you can run
# Create folders and parent directories as needed mkdir -p .github/workflows
workflows/ directory, this is where you’ll create your workflows.
Essentially, this is where all your translated
Here’s an annotated GitHub Action I set up.
# Name of your workflow that GitHub displays name: Check Resources # Name of GitHub event that activates the workflow (required) on: [push,pull_request] # List of jobs to be run for workflow jobs: # Name of job validate_links: name: Validate links # optional runs-on: ubuntu-latest # type of machine to run on steps: # These below are published Docker container images under `uses` - name: Checkout source files uses: actions/checkout@v2 - name: Setup Ruby 2.6 uses: ruby/setup-ruby@v1 with: ruby-version: 2.6 # You can also run your custom commands if no published action exists - name: Run checks on links run: | gem install awesome_bot awesome_bot --allow-ssl --allow 302,429 --allow-dupe -f README.md
Here is a list of
you can place within
jobs.<job_id>.runs-on option above.
You can take a look at more GitHub Actions on this Awesome-Actions page with a curated list of great things you can do with GitHub Actions. I hope to make use of this feature more in the future.