Skip to content
Adam Ormsby edited this page Nov 7, 2021 · 6 revisions

Important: Use fetch-depth: '0' for repo checkout. (details)

Features

Updates in v2

Important: Some input variable names were changed for v2 to improve clarity. Please see the input change table for reference.

The update to v2 brings the following functionality --

Release Branch Pattern

In v1, the action performed all of its steps on the source branch of a project. Each update, build, and push to the source branch had the unwanted effect of adding a bunch of garbage auto-build commits to the history of a branch that may be meant instead for active development. To help separate working branches from releases, the action now provides input for a release_branch, which is used for builds and deploys instead of the source.

This provides a few straightforward benefits over the previous pattern:

  • No mixing of git history between working branches and releases
  • Local builds on working branches won't interfere with previously published release data
  • A standalone release branch with easy access to only releases - makes reverting easier, too!
  • Follows more standard continuous delivery patterns (though a very simple version of them)

Test Mode

Setting the input var test_mode: true enables a set of input tests designed to help with your action setup. The tests will run instead of the action, and they will verify the following things:

  • Does the source_branch exist in your repo?
  • Does the release branch exist?
  • Are git user/email configuration successful? And do they correctly reset?
  • If doing full_rebuild:
    • Prints out your regex patterns from do_not_delete_regex
    • Prints out a list of files to be saved
    • Prints out a list of files to be deleted
    • (These are not pass/fail tests, but they are here to help you verify your setup.)
  • If your hugo_publish_directory is a git submodule:
    • Was the submodule cloned in the job checkout step?
    • Does the submodule_release_branch exist in the submodule repo?

If you have any failed tests, your action input values are likely incorrect or something is missing in your setup. Running test mode before deployment can help avoid several issues. See setup notes for help configuring the action.

Suggestions for more tests are welcome! Please open an issue to share your ideas.

After v2, no further work will be done for v1. All future updates will be for v2 and higher.

Possible Upcoming Features

I'm not sure! If you have any ideas for improvement, please open an issue with your feature request. I'm happy to consider further additions to this action.