Skip to content

yaiqsa/ansible-netplan

 
 

Repository files navigation

Table of Contents generated with DocToc

ansible-netplan

An Ansible role to manage Netplan

Requirements

You probably want to run the role with become: true

Role Variables

defaults/main.yml

Dependencies

Example Playbook

The following is a trivial example of a playbook that sets a single network interface. See defaults/main.yml for a full list of values that can be set for this role.

---
- hosts: ...your hosts...
  any_errors_fatal: true
  roles:
    - role: mrlesmithjr.netplan
      become: yes
      # This role will do nothing unless netplan_enabled is true.
      netplan_enabled: true
      
      # This should point to an existing netplan configuration file 
      # on your system which this role will overwrite, 
      # or to a nonexistent file which netplan is aware of.
      #
      # The default is /etc/netplan/config.yaml.
      netplan_config_file: /etc/netplan/my-awesome-netplan.yaml
      
      # Ubuntu 18.04, for example, defaults to using networkd.
      netplan_renderer: networkd
      # Simple network configuration to add a single network interface.
      # Configuration defined bellow will be written to the file defined
      # above in `netplan_config_file`.
      netplan_configuration:
        network:
          version: 2
          ethernets:
            enp28s0f7:
              addresses:
                - 10.11.12.99/24

Using vaulted variables

Vault encrypted variables need to be defined outside the netplan_configuration variable to be evaluated.

netplan_configuration:
  network:
    version: 2
    tunnels:
      wg_test:
        mode: wireguard
        key: "{{ my_wireguard_private_key }}"
      ....

my_wireguard_private_key: !vault |
          31366530666465373834386563636465636135323562303866363333333865376330303130363162
          ....

License

MIT

Author Information

Larry Smith Jr.

Buy Me A Coffee

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Jinja 76.8%
  • Shell 23.2%