working on it

This commit is contained in:
n0mad1k
2025-05-10 15:57:23 -04:00
parent ce5d7c4fb7
commit b6ec49f5a3
5 changed files with 26 additions and 16 deletions
+12 -4
View File
@@ -24,15 +24,23 @@
- linode_token is defined and linode_token != ""
fail_msg: "Linode API token is required. Set linode_token in vars.yaml or via --linode-token."
# Replace these tasks at the beginning of the playbook
- name: Set region for C2 server
set_fact:
c2_region_value: "{{ selected_region | default(region, true) | default(linode_region, true) | default('us-east', true) }}"
when: region_choices is not defined or region_choices|length == 0
c2_region_value: "{{ selected_region | default(linode_region, true) | default('us-east', true) }}"
- name: Set random region for C2 server
- name: Display region selection information for debugging
debug:
msg:
- "Selected Region: {{ selected_region | default('Not set') }}"
- "Linode Region: {{ linode_region | default('Not set') }}"
- "Using Region: {{ c2_region_value }}"
when: debug | default(false) | bool
- name: Set random region only if absolutely no region specified
set_fact:
c2_region_value: "{{ region_choices | random }}"
when: region_choices is defined and region_choices|length > 0 and c2_region_value is not defined
when: region_choices is defined and region_choices|length > 0 and not selected_region is defined and not linode_region is defined and not c2_region_value is defined
- name: Create C2 Linode instance
community.general.linode_v4:
+11 -5
View File
@@ -20,15 +20,21 @@
- linode_token is defined and linode_token != ""
fail_msg: "Linode API token is required. Set linode_token in vars.yaml or via --linode-token."
- name: Set region for deployment
# Update the region selection logic in Linode/redirector.yml
- name: Set region for redirector
set_fact:
deployment_region: "{{ selected_region | default(region, true) | default(linode_region, true) | default('us-east', true) }}"
when: region_choices is not defined or region_choices|length == 0
deployment_region: "{{ selected_region | default(linode_region, true) | default('us-east', true) }}"
- name: Set random region for deployment
- name: Display region selection for redirector
debug:
msg: "Using region for redirector: {{ deployment_region }}"
when: debug | default(false) | bool
# Only use random region as a last resort
- name: Set random region only if no region specified
set_fact:
deployment_region: "{{ region_choices | random }}"
when: region_choices is defined and region_choices|length > 0 and deployment_region is not defined
when: region_choices is defined and region_choices|length > 0 and not selected_region is defined and not linode_region is defined and not deployment_region is defined
- name: Create redirector Linode instance
community.general.linode_v4:
+2 -6
View File
@@ -1193,19 +1193,15 @@ def create_inventory_file(config, deployment_type):
return inventory_path
def run_ansible_playbook(playbook, inventory, config, debug=False):
"""Run an Ansible playbook with the given inventory and config"""
# Convert config dict to JSON for extra-vars
extra_vars = {k: v for k, v in config.items() if v is not None and not isinstance(v, (dict, list, tuple))}
# Handle the region parameter correctly
# Ensure consistent region parameter handling
if 'region' in extra_vars:
extra_vars['selected_region'] = extra_vars['region']
elif 'linode_region' in extra_vars:
extra_vars['selected_region'] = extra_vars['linode_region']
# Remove ansible_python_interpreter from extra_vars
if 'ansible_python_interpreter' in extra_vars:
extra_vars.pop('ansible_python_interpreter')
extra_vars['region'] = extra_vars['linode_region'] # Added for consistency
extra_vars_json = json.dumps(extra_vars)
View File
+1 -1
View File
@@ -161,7 +161,7 @@
group: "{{ ansible_user }}"
mode: '0644'
vars:
gophish_admin_port: "{{ gophish_admin_port }}"
gophish_admin_port: 8088
domain: "{{ domain }}"
- name: Set proper ownership for Tools directory