Development: Add Staging 2 - #47
Conversation
📝 WalkthroughWalkthroughAdds a full "staging2" Artemis environment: inventory/groups, group and host variables (network/WireGuard, Vault lookups), 13 provisioning playbooks, and a MySQL role version bump; also comments out sharing config in test common config. Changes
Sequence Diagram(s)sequenceDiagram
participant Operator as Operator
participant Ansible as Ansible Controller
participant Vault as HashiVault
participant Hosts as Staging2 Hosts (nodes, db, broker, registry, proxy, storage)
Operator->>Ansible: run playbook complete-setup.yml
Ansible->>Vault: lookup secrets (WireGuard keys, Redis password, service creds)
Ansible->>Hosts: configure network (netplan) and wireguard
Ansible->>Hosts: provision storage, DB, broker, registry, redis, proxy
Ansible->>Hosts: apply firewall, proxy, and application roles
Hosts-->>Ansible: status/results
Ansible-->>Operator: playbook summary/return code
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 8
🤖 Fix all issues with AI agents
In `@host_vars/agent02.staging2.artemis.cit.tum.de.yml`:
- Around line 9-11: Fix the typo in the comment above the Wireguard keys: change
the comment string "Wireguard Keys - Autmatically generated!" to "Wireguard Keys
- Automatically generated!" so the header above the variables wireguard_pubkey
and wireguard_privkey is spelled correctly.
In `@host_vars/db.staging2.artemis.cit.tum.de.yml`:
- Line 9: Fix the typo in the YAML comment string "# Wireguard Keys -
Autmatically generated!" by changing "Autmatically" to "Automatically" so the
comment reads "# Wireguard Keys - Automatically generated!"; update the exact
comment text in the file where that string occurs (search for the comment
starting with "Wireguard Keys -") and save the file.
In `@host_vars/node2.staging2.artemis.cit.tum.de.yml`:
- Line 9: Fix the typo in the comment string "# Wireguard Keys - Autmatically
generated!" by replacing "Autmatically" with "Automatically" so the comment
reads "# Wireguard Keys - Automatically generated!"; update the exact comment
line in the YAML file containing that string.
In `@host_vars/node3.staging2.artemis.cit.tum.de.yml`:
- Line 9: Fix the typo in the comment string "Wireguard Keys - Autmatically
generated!" by changing "Autmatically" to "Automatically" so the comment reads
"Wireguard Keys - Automatically generated!"; locate this exact comment text in
the file and update it to the corrected spelling.
In `@host_vars/redis.staging2.artemis.cit.tum.de.yml`:
- Line 9: Fix the typo in the comment line that reads "# Wireguard Keys -
Autmatically generated!" by changing "Autmatically" to "Automatically" so the
comment becomes "# Wireguard Keys - Automatically generated!"; Locate and update
the exact comment string to preserve spacing and punctuation.
In `@host_vars/storage.staging2.artemis.cit.tum.de.yml`:
- Line 9: Fix the typo in the comment string "# Wireguard Keys - Autmatically
generated!" by updating "Autmatically" to "Automatically" so the comment reads
"# Wireguard Keys - Automatically generated!"; locate this exact comment in the
file and correct the spelling.
In `@playbooks/artemis-staging2/nodes.yml`:
- Around line 12-20: The role entry currently uses a developer-local absolute
path
"/Users/benjaminschmitz/Development/artemis-ansible-collection/roles/artemis"
which will not resolve in CI; replace that string with the collection-qualified
role name "ls1intum.artemis.artemis" (the comment already shows this) so the
playbook uses the collection role convention like the other entries; update the
role value for the relevant node entry where "role:" is set to the absolute
path.
In `@playbooks/artemis-staging2/redis.yml`:
- Around line 2-6: Replace the hardcoded local role path used in the play
"Setup" (the string
"/Users/benjaminschmitz/Development/artemis-ansible-collection/roles/redis"
under roles) with the collection role reference (ls1intum.artemis.redis) so the
play uses the collection-provided role instead of a local filesystem path;
update the roles entry for the artemis_staging2_redis host group to reference
the collection role name.
🧹 Nitpick comments (1)
playbooks/artemis-staging2/nodes-version-update.yml (1)
5-12: Confirm the intent to force explicit-e artemis_version.Setting
artemis_version:to null overrides any group_vars value and guarantees the pre-task fails unless extra-vars are provided. If that’s intentional, consider documenting it; if not, remove the override.♻️ Optional adjustment if group_vars should apply
- vars: - artemis_version: # Unset artemis_version to ignore the initial version in group_vars
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Fix all issues with AI agents
In `@host_vars/broker.staging2.artemis.cit.tum.de.yml`:
- Around line 2-4: The wireguard_host_ipv6_address value is missing a CIDR
suffix while the comment expects an address with CIDR; update the variable
wireguard_host_ipv6_address to include the appropriate prefix length (e.g.
append /64 or the network's actual prefix) so it matches host_ipv4_address's
format, or if the project expects bare addresses instead, adjust the comment and
any consumers that parse wireguard_host_ipv6_address to accept no-CIDR values;
modify either the value of wireguard_host_ipv6_address or the comment/consuming
code accordingly.
In `@host_vars/node2.staging2.artemis.cit.tum.de.yml`:
- Around line 2-4: The comment is misleading: change it to state that
wireguard_host_ipv6_address holds only the IPv6 address (no CIDR/prefix) because
the playbooks append the prefix (e.g., "{{ wireguard_host_ipv6_address }}/64");
update the comment text above the wireguard_host_ipv6_address (and similarly
clarify for host_ipv4_address if applicable) to explicitly say "IPv6 address
only — do not include CIDR/prefix" so maintainers know not to include a /prefix
in the variable value.
Motivation and Context
Staging 2 for Redis (ls1intum/artemis-ansible-collection#98)
Description
Add Staging 2
Summary by CodeRabbit
New Features
Chores
Documentation
✏️ Tip: You can customize this high-level summary in your review settings.