https://github.com/j0hn-b/k3d_act
Build and Test github actions in a CI-agnostic way
https://github.com/j0hn-b/k3d_act
bash ci-cd devops docker github-actions gitops k3d
Last synced: 3 months ago
JSON representation
Build and Test github actions in a CI-agnostic way
- Host: GitHub
- URL: https://github.com/j0hn-b/k3d_act
- Owner: J0hn-B
- Created: 2021-01-11T16:17:28.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2021-01-12T15:49:46.000Z (over 5 years ago)
- Last Synced: 2025-02-28T21:51:02.904Z (over 1 year ago)
- Topics: bash, ci-cd, devops, docker, github-actions, gitops, k3d
- Language: Shell
- Homepage:
- Size: 2.11 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
# How to run GitHub Actions workflows locally?

At the time of writing the most preferred method is [nektos/act](https://github.com/nektos/act)
Act is a great tool but it is not perfect, not yet.
Bear in mind, there is strong possibility you will plan to migrate from GitHub Actions
to something new in the next 24/36 months.
What you need is to avoid a vendor lock-in by using the vendor-specific tools/language they provide.
The goal is to run the same configuration locally and in GitHub Actions with zero changes and been able to migrate on another tool of choice in the future without re-writing everything.
**Do this:** 
**Not this:** 
## Run GitHub Actions workflows locally
Create a k3d environment and deploy Drupal as an example application:
```act -r``` will deploy the cluster the first time.
> The next time you run ```act -r``` your cluster will update.


## Install
> You must have docker installed.
1) Install act:
2) Fork or git clone the repo:
```git clone https://github.com/J0hn-B/k3d_act.git```
3) ```cd k3d_act```
4) ```act -r``` deploy for first time
5) From your editor go to ```.github/workflows/k3d_runner.yml``` and uncomment **Install Helm charts** action.
6) ```act -r``` update the cluster
7) Push to your repo and check the actions tab.
