### Description
This PR adds a new silvetbullet role that configures and starts the silverbullet container
Changes
- Creates required silverbullet `space` directory
- creates silverbullet `.container` file
- starts new and updated `.container` files
### Related Issue
Closes#21
### Testing Done
- [x] [e.g., Ran local unit tests]
- [x] [e.g., Verified service starts under Podman]
- [x] [e.g., Manual check of configuration file output]
### Checklist
- [x] My code follows the project's style guidelines.
- [x] I have performed a self-review of my own code.
- [x] I have updated the documentation (if necessary).
---------
Co-authored-by: Jordan Del Pilar <[email protected]>
Reviewed-on: #23
### Description
This PR adds a new `ntfy_server` role to configure, start, and test a ntfy container.
This container is designed to be secure by default by requiring auth by default
### Related Issue
Closes#15
### Testing Done
- [x] verified new container file was created correctly\
- [x] verified ntfy server webui is working and requires auth
- [x] verified with automated test that ntfy server is working and accepting post requests
### Checklist
- [x] My code follows the project's style guidelines.
- [x] I have performed a self-review of my own code.
- [x] I have updated the documentation (if necessary).
---------
Co-authored-by: Jordan Del Pilar <[email protected]>
Reviewed-on: #20
### Description
This PR adds new `minecraft_server` to configure and start a Minecraft server container on targeted hosts.
### Related Issue
Closes#18
### Testing Done
- [x] Verifed new role creates container files correctly
- [x] verified new container is able to start and run via systemd
- [x] verified server is accessible via Minecraft client
### Checklist
- [x] My code follows the project's style guidelines.
- [x] I have performed a self-review of my own code.
- [x] I have updated the documentation (if necessary).
---------
Co-authored-by: Jordan Del Pilar <[email protected]>
Reviewed-on: #19
### Description
This PR updates `README.md` and adds `README.md` files for all roles
### Related Issue
Closes#12
### Testing Done
- [x] Verified docs match current state of repo and roles
### Checklist
- [x] My code follows the project's style guidelines.
- [x] I have performed a self-review of my own code.
- [x] I have updated the documentation (if necessary).
---------
Co-authored-by: Jordan Del Pilar <[email protected]>
Reviewed-on: #14
### Description
This PR adds in a new role to setup backup for all hosts via restic with an rclone backend.
Added new host_vars to all host for both rclone and restic settings. All secrets are saved via ansible-vault encrypted strings.
New role creates `rclone.conf` to correctly map remotes. This conf file uses client id and client secret for google cloud project to allow for faster api access and better security.
### Related Issue
Closes#10
### Testing Done
- [x] Ran `ansible-lint` aganist local copy to verify syntax
- [x] Ran new role against testing environment to verify functionality.
- [x] Verified created backup service runs via triggering manually
- [x] Verified systemd timers trigger correctly
### Checklist
- [x] My code follows the project's style guidelines.
- [x] I have performed a self-review of my own code.
---------
Co-authored-by: Jordan Del Pilar <[email protected]>
Reviewed-on: #11
### Description
This PR adds new PR Template
All Future PRs will use the new template. Adjustments will be made to the template as needed.
---------
Co-authored-by: Jordan Del Pilar <[email protected]>
Reviewed-on: #9
This PR adds templates for issues. This template will be used for all new issues opened in this repo.
Future PR will add a PR template as well.
---------
Co-authored-by: Jordan Del Pilar <[email protected]>
Reviewed-on: #8
This PR fixes an issue with how the CI/CD pipeline was setup up
## Major fixes
- Addressed an issue with the CI/CD pipeline restarting core services during production runs.
- Updated ansible-playbook command to include the `skip-tags` flag. This currently skips the new `core` tag. | 19a7e77045
- Added new `core` tag to `site.yaml`. This new tag covers any roles that deal with or might restart core services. | 3335594077
---------
Co-authored-by: Jordan Del Pilar <[email protected]>
Reviewed-on: #7
This PR fixes an issue with the act_runner container set up.
## Major Changes
- Update act_runner_quadlet.j2 template to fix an issue where the runner would restart adguard during the pipeline. This caused the act_runner container to restart as well due to the line "requires=adguard.service"
- Updated gitea_quadlet.j2 to disable new user registration.
---------
Co-authored-by: Jordan Del Pilar <[email protected]>
Reviewed-on: #6
Updated the vault-pass,txt injection task to use printf. This avoids issues with special characters in the vault-password
---------
Co-authored-by: Jordan Del Pilar <[email protected]>
Reviewed-on: #5
This PR add the basic CI/CD workflow.
- On push to any branch ansible-lint is ran to verify syntax and formatting
- On push to main, all pushes are required to pass ansible-lint. Project is than ran against all hosts to push changes to production.
---------
Co-authored-by: Jordan Del Pilar <[email protected]>
Reviewed-on: #4
This PR adds a CI/CD pipeline.
On push to all branches it runs ansible-lint against the commit
On push to main it runs the playbook against all targets
---------
Co-authored-by: Jordan Del Pilar <[email protected]>
Reviewed-on: #3
This PR fixes a minor bug in the generation of container files for act_runner.
container files were being created missing a period for the file extension.
Expected outcome is act_runner.container, however before this fix container files were being created as act_runnercontainer.
---------
Co-authored-by: Jordan Del Pilar <[email protected]>
Reviewed-on: #1
Changed how lists of volumes is handled when reading from services directories. New form uses jinja2 based templating, allowing for handling lists with 1 element.
Removed some unneeded comments.
Volume maping used for the gitea service was incorrectly using the mapping for rootless gitea while using the rootful image. This caused volumes to mounted to anonymous volumes that were ephemeral.
Creates foundation for home lab environment
- sets system baselines and creates required directories
- adds `common` role for system baselines
- adds `dns_server` role to set up dns for internal routing
- adds `gitea_server` role to set up git and action runner