Auto-update blog content from Obsidian: 2026-04-29 20:40:29
Some checks failed
Blog Deployment / Notify (push) Successful in 3s
Blog Deployment / Check-Rebuild (push) Successful in 6s
Blog Deployment / Build (push) Has been skipped
Blog Deployment / Deploy-Staging (push) Successful in 9s
Blog Deployment / Test-Staging (push) Failing after 3s
Blog Deployment / Merge (push) Has been skipped
Blog Deployment / Test-Production (push) Has been skipped
Blog Deployment / Clean (push) Has been skipped
Blog Deployment / Deploy-Production (push) Has been skipped
Some checks failed
Blog Deployment / Notify (push) Successful in 3s
Blog Deployment / Check-Rebuild (push) Successful in 6s
Blog Deployment / Build (push) Has been skipped
Blog Deployment / Deploy-Staging (push) Successful in 9s
Blog Deployment / Test-Staging (push) Failing after 3s
Blog Deployment / Merge (push) Has been skipped
Blog Deployment / Test-Production (push) Has been skipped
Blog Deployment / Clean (push) Has been skipped
Blog Deployment / Deploy-Production (push) Has been skipped
This commit is contained in:
@@ -109,23 +109,23 @@ With Semaphore running, let’s take a quick tour of the UI and wire it up to a
|
||||
## Discovery
|
||||
|
||||
After starting the stack, I can reach the login page at the URL:
|
||||

|
||||

|
||||
|
||||
To log in, I use the credentials defined by `SEMAPHORE_ADMIN_NAME`/`SEMAPHORE_ADMIN_PASSWORD`.
|
||||
|
||||
On first login, Semaphore prompt me to create a project. I created the Homelab project:
|
||||

|
||||

|
||||
|
||||
The first thing I want to do is to add my *homelab* repository (you can find its mirror on Github [here](https://github.com/Vezpi/homelab)). In `Repository`, I click the `New Repository` button, and add the repo URL. I don't specify credentials because the repo is public:
|
||||

|
||||

|
||||
|
||||
ℹ️ Before continue, I deploy 3 VMs for testing purpose: `sem01`, `sem02` and `sem03`. I created them using Terraform with [this project](https://github.com/Vezpi/Homelab/tree/main/terraform/projects/semaphore-vms).
|
||||
|
||||
To interact with these VMs I need to configure credentials. In the the `Key Store`, I add the first credential, a SSH key for my user:
|
||||

|
||||

|
||||
|
||||
Then I create a new `Inventory`. I'm using the Ansible inventory format (the only one available). I select the SSH key previously created and select the type as `Static`. In the fields I enter the 3 hosts created with their FQDN:
|
||||

|
||||

|
||||
|
||||
✅ With a project, repo, credentials, and inventory in place, I can move forward and test to run an Ansible playbook.
|
||||
|
||||
@@ -172,20 +172,20 @@ I want to test something simple, install a web server with a custom page on thes
|
||||
```
|
||||
|
||||
In Semaphore UI, I can now create my first `Task Template` for Ansible playbook. I give it a name, the playbook path (from the root folder of the repo), the repository and its branch:
|
||||

|
||||

|
||||
|
||||
Time to launch the playbook! In the task templates list, I click on the ▶️ button:
|
||||

|
||||

|
||||
|
||||
The playbook launches and I can follow the output in real time:
|
||||

|
||||

|
||||
|
||||
I can also review previous runs:
|
||||

|
||||

|
||||
|
||||
|
||||
✅ Finally I can confirm the job is done by checking the URL on port 80 (http):
|
||||

|
||||

|
||||
|
||||
Managing Ansible playbooks in Semaphore UI is pretty simple and really convenient. The interface is really sleek.
|
||||
|
||||
@@ -233,19 +233,19 @@ With that in place, the playbook succeeded and I could create the user:
|
||||
```
|
||||
|
||||
Next I create a variable group `pve_vm`. A variable group let me define multiple variables and secrets together:
|
||||

|
||||

|
||||
|
||||
Then I create a new task template, this time with the kind Terraform Code. I give it a name, the path of the terraform [project](https://github.com/Vezpi/Homelab/tree/main/terraform/projects/semaphore-vms), a workspace, the repository along with its branch and. the variable group:
|
||||

|
||||

|
||||
|
||||
Running the template gives me some additional options related to Terraform:
|
||||

|
||||

|
||||
|
||||
After the Terraform plan, I'm proposed to apply, cancel or stop:
|
||||

|
||||

|
||||
|
||||
Finally after hitting ✅ to apply, I could watch Terraform build the VMs, just like using the CLI. At the end, the VMs were successfully deployed on Proxmox:
|
||||

|
||||

|
||||
|
||||
---
|
||||
## Conclusion
|
||||
|
||||
Reference in New Issue
Block a user