Project Link: https://git.exozy.me/nvpie/jenkins-projects Jenkins Way: https://medium.com/@rajani103/jenkins-cicd-with-github-integration-c9790cd4d6fb

We are using Woodpecker-CI self hosted at: https://ci.exozy.me

Step 1: Clone the repo in the machine

`git clone https://git.exozy.me/nvpie/jenkins-projects

Step 2 : Add the .woodpecker.yaml file into root (/) of repo

with the following contents:

steps:
  TEST:
    image: zsh
    commands:
      - echo "hi this is test"
 
  BUILD:
    image: zsh
    commands:
      - podman build . -t todoapp
 
  CLEAN:
    image: zsh
    commands:
      - podman rm -f todoapp || true
 
  RUN:
    image: zsh
    commands:
      - podman run -d -p 8989:8989 --name todoapp todoapp:latest
 

Note: Inspired by this example file

==Since our instance runs on the local backend rather than the docker backend, passing a container image name in the image field will not work. Instead, we should pass one of the shells available in the system (ex. bash, fish), and that will run our commands.==

Step 3: enable the repo from woodpecker gui.

once we push this to the repo it will execute all the actions in following order:

1. TEST
2. BUILD
3. CLEAN
4. RUN

Now our instance of nodejs note app is running on http://localhost:8989