Skip to content
Snippets Groups Projects
Select Git revision
  • 02ef40f83d9ece195f1ed0e16a42a82530d25cee
  • main default protected
2 results

rdp_lb_member.yaml

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    rdp_lb_member.yaml 1.48 KiB
    heat_template_version: "2018-08-31"
    
    description: Template for a windows instance that adds itself to a loadbalancer
    
    parameters:
      server_name:
        type: string
        description: Name of server
      network_name:
        type: string
        description: Name of network
      lb_pool_name:
        type: string
        description: Name of LB pool
      key_name:
        type: string
        description: Name of keypair to enable ssh to the instance
      subnet_name:
        type: string
        description: Subnet for pool member
      volume_id:
        type: string
        description: Volume ID for project
      RDP_members:
        type: string
        description: RDP members to inject
    
      # This solution was inspired from Lars Erik Pedersens (NTNU IT-Division)
      # proposal https://github.com/LarsErikP/heat-examples/tree/main/lbtest
    resources:
      server:
        type: OS::Nova::Server
        properties:
          name: { get_param: server_name }
          flavor: m1.small
          image: "Windows 10 21H2 Enterprise [Evaluation]"
          key_name: { get_param: key_name }
          networks:
            - network: {get_param: network_name}
          user_data_format: RAW
          user_data:
            str_replace:
              template:
                get_file: bootup.ps1
              params:
                <RDPMembers>: {get_param: RDP_members}
    
      poolmember: # The virtual workstation made a pool member
        type: OS::Octavia::PoolMember
        properties:
          address: { get_attr: [ server, first_address ] }
          pool: { get_param: lb_pool_name }
          protocol_port: 3389
          subnet: {get_param: subnet_name}