Last active
April 1, 2021 14:17
-
-
Save dciangot/1fb81ba51aa38dd8381683c116deb707 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
tosca_definitions_version: tosca_simple_yaml_1_0 | |
metadata: | |
template_author: INDIGO/DEEP | |
template_name: indigo_custom_types | |
template_version: 4.0.0 | |
description: Contains the custom types definition as defined by the INDIGO & DEEP team | |
capability_types: | |
tosca.capabilities.indigo.OperatingSystem: | |
derived_from: tosca.capabilities.OperatingSystem | |
properties: | |
gpu_driver: | |
type: boolean | |
required: no | |
cuda_support: | |
type: boolean | |
required: no | |
cuda_min_version: | |
type: string | |
required: no | |
cuDNN_version: | |
type: string | |
required: no | |
image: | |
type: string | |
required: no | |
credential: | |
type: tosca.datatypes.Credential | |
required: no | |
tosca.capabilities.indigo.Scalable: | |
derived_from: tosca.capabilities.Scalable | |
properties: | |
min_instances: | |
type: integer | |
default: 1 | |
required: no | |
max_instances: | |
type: integer | |
default: 1 | |
required: no | |
count: | |
type: integer | |
description: the number of resources | |
required: no | |
default: 1 | |
removal_list: | |
type: list | |
description: list of IDs of the resources to be removed | |
required: no | |
entry_schema: | |
type: string | |
tosca.capabilities.indigo.Container: | |
derived_from: tosca.capabilities.Container | |
properties: | |
preemtible_instance: | |
type: boolean | |
required: no | |
instance_type: | |
type: string | |
required: no | |
num_gpus: | |
type: integer | |
required: false | |
gpu_vendor: | |
type: string | |
required: false | |
gpu_model: | |
type: string | |
required: false | |
sgx: | |
type: boolean | |
required: no | |
tosca.capabilities.indigo.LRMS: | |
derived_from: tosca.capabilities.Container | |
properties: | |
type: | |
type: string | |
required: true | |
constraints: | |
- valid_values: [ local, torque, slurm, sge, condor, mesos, kubernetes ] | |
tosca.capabilities.indigo.LRMS.Torque: | |
derived_from: tosca.capabilities.indigo.LRMS | |
properties: | |
type: | |
type: string | |
required: true | |
default: torque | |
constraints: | |
- equal: torque | |
tosca.capabilities.indigo.LRMS.Slurm: | |
derived_from: tosca.capabilities.indigo.LRMS | |
properties: | |
type: | |
type: string | |
required: true | |
default: slurm | |
constraints: | |
- equal: slurm | |
tosca.capabilities.indigo.LRMS.Kubernetes: | |
derived_from: tosca.capabilities.indigo.LRMS | |
properties: | |
type: | |
type: string | |
required: true | |
default: kubernetes | |
constraints: | |
- equal: kubernetes | |
tosca.capabilities.indigo.LRMS.Local: | |
derived_from: tosca.capabilities.indigo.LRMS | |
properties: | |
type: | |
type: string | |
required: true | |
default: local | |
constraints: | |
- equal: local | |
tosca.capabilities.indigo.LRMS.Mesos: | |
derived_from: tosca.capabilities.indigo.LRMS | |
properties: | |
type: | |
type: string | |
required: true | |
default: mesos | |
constraints: | |
- equal: mesos | |
tosca.capabilities.indigo.ClusterMaster: | |
derived_from: tosca.capabilities.Container | |
tosca.capabilities.indigo.MesosMaster: | |
derived_from: tosca.capabilities.indigo.ClusterMaster | |
tosca.capabilities.indigo.KubernetesMaster: | |
derived_from: tosca.capabilities.indigo.ClusterMaster | |
tosca.capabilities.indigo.MesosSlave: | |
derived_from: tosca.capabilities.Container | |
tosca.capabilities.indigo.Container.Docker: | |
derived_from: tosca.capabilities.Container.Docker | |
properties: | |
num_cpus: | |
type: float | |
required: false | |
constraints: | |
- greater_or_equal: 0.0 | |
num_gpus: | |
type: integer | |
required: false | |
tosca.capabilities.indigo.Endpoint: | |
derived_from: tosca.capabilities.Endpoint | |
properties: | |
dns_name: | |
description: The optional name to register with DNS | |
type: string | |
required: false | |
private_ip: | |
description: Flag used to specify that this endpoint will require also a private IP although it is a public one. | |
type: boolean | |
required: false | |
default: true | |
ports: | |
type: map | |
description: The optional map of ports the Endpoint supports (if more than one). | |
required: false | |
constraints: | |
- min_length: 1 | |
entry_schema: | |
type: tosca.datatypes.network.PortSpec | |
attributes: | |
credential: | |
type: list | |
entry_schema: | |
type: tosca.datatypes.Credential | |
tosca.capabilities.indigo.Container.Application.Docker.Chronos: | |
derived_from: tosca.capabilities.Root | |
artifact_types: | |
tosca.artifacts.Implementation.YAML: | |
derived_from: tosca.artifacts.Implementation | |
description: YAML Ansible recipe artifact | |
mime_type: text/yaml | |
file_ext: [ yaml, yml ] | |
tosca.artifacts.AnsibleGalaxy.role: | |
derived_from: tosca.artifacts.Root | |
description: Ansible Galaxy role to be deployed in the target node | |
tosca.artifacts.Deployment.Image.Container.Docker: | |
derived_from: tosca.artifacts.Deployment.Image | |
description: Docker Container Image | |
relationship_types: | |
tosca.relationships.indigo.Manages: | |
derived_from: tosca.relationships.Root | |
tosca.relationships.indigo.AttachesTo: | |
derived_from: tosca.relationships.AttachesTo | |
properties: | |
fs_type: | |
type: string | |
required: false | |
default: | |
node_types: | |
# Standard types defined in TOSCA with interfaces to install | |
tosca.nodes.Database.MySQL: | |
derived_from: tosca.nodes.Database | |
metadata: | |
icon: /images/mysql-db.png | |
requirements: | |
- host: | |
capability: tosca.capabilities.Container | |
relationship: tosca.relationships.HostedOn | |
node: tosca.nodes.DBMS.MySQL | |
interfaces: | |
Standard: | |
create: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/mysql/mysql_db_configure.yml | |
inputs: | |
db_password: { get_property: [ SELF, password ] } | |
db_name: { get_property: [ SELF, name ] } | |
db_user: { get_property: [ SELF, user ] } | |
db_root_password: "" | |
db_access_host: "%" | |
tosca.nodes.DBMS.MySQL: | |
derived_from: tosca.nodes.DBMS | |
metadata: | |
icon: /images/mysql-server.png | |
properties: | |
port: | |
type: integer | |
description: reflect the default MySQL server port | |
default: 3306 | |
root_password: | |
type: string | |
# MySQL requires a root_password for configuration | |
required: true | |
capabilities: | |
# Further constrain the ‘host’ capability to only allow MySQL databases | |
host: | |
type: tosca.capabilities.Container | |
valid_source_types: [ tosca.nodes.Database.MySQL ] | |
interfaces: | |
Standard: | |
create: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/mysql/mysql_install.yml | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/mysql/mysql_configure.yml | |
inputs: | |
root_password: { get_property: [ SELF, root_password ] } | |
port: { get_property: [ SELF, port ] } | |
tosca.nodes.WebServer.Apache: | |
derived_from: tosca.nodes.WebServer | |
metadata: | |
icon: /images/apache.png | |
interfaces: | |
Standard: | |
create: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/apache/apache_install.yml | |
start: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/apache/apache_start.yml | |
# INDIGO non normative types | |
tosca.nodes.indigo.Database.MySQL: | |
derived_from: tosca.nodes.Database.MySQL | |
metadata: | |
icon: /images/mysql-db-indigo.png | |
properties: | |
access_host: | |
type: string | |
required: no | |
default: "%" | |
root_password: | |
type: string | |
required: true | |
requirements: | |
- host: | |
capability: tosca.capabilities.Container | |
relationship: tosca.relationships.HostedOn | |
node: tosca.nodes.DBMS.MySQL | |
interfaces: | |
Standard: | |
create: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/mysql/mysql_db_configure.yml | |
inputs: | |
db_password: { get_property: [ SELF, password ] } | |
db_name: { get_property: [ SELF, name ] } | |
db_user: { get_property: [ SELF, user ] } | |
db_root_password: { get_property: [ SELF, root_password ] } | |
db_access_host: { get_property: [ SELF, access_host ] } | |
tosca.nodes.indigo.Compute: | |
derived_from: tosca.nodes.indigo.MonitoredCompute | |
metadata: | |
icon: /images/compute.png | |
attributes: | |
private_address: | |
type: list | |
entry_schema: | |
type: string | |
public_address: | |
type: list | |
entry_schema: | |
type: string | |
ctxt_log: | |
type: string | |
capabilities: | |
scalable: | |
type: tosca.capabilities.indigo.Scalable | |
os: | |
type: tosca.capabilities.indigo.OperatingSystem | |
endpoint: | |
type: tosca.capabilities.indigo.Endpoint | |
host: | |
type: tosca.capabilities.indigo.Container | |
valid_source_types: [tosca.nodes.SoftwareComponent] | |
tosca.nodes.indigo.MonitoredCompute: | |
derived_from: tosca.nodes.Compute | |
properties: | |
# Set the current data of the zabbix server | |
# but it can also specified in the TOSCA document | |
zabbix_server: | |
type: string | |
required: no | |
default: orchestrator.cloud.cnaf.infn.it | |
zabbix_server_port: | |
type: tosca.datatypes.network.PortDef | |
required: no | |
default: 10051 | |
zabbix_server_metadata: | |
type: string | |
required: no | |
default: Linux 668c875e-9a39-4dc0-a710-17c41376c1e0 | |
artifacts: | |
zabbix_agent_role: | |
file: indigo-dc.zabbix-agent,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/zabbix/zabbix_agent_install.yml | |
inputs: | |
zabbix_server: { get_property: [ SELF, zabbix_server ] } | |
zabbix_server_port: { get_property: [ SELF, zabbix_server_port ] } | |
zabbix_server_metadata: { get_property: [ SELF, zabbix_server_metadata ] } | |
tosca.nodes.indigo.GalaxyPortal: | |
derived_from: tosca.nodes.WebServer | |
metadata: | |
icon: /images/galaxy.png | |
properties: | |
admin_email: | |
type: string | |
description: email of the admin user | |
default: admin@admin.com | |
required: false | |
admin_api_key: | |
type: string | |
description: key to access the API with admin role | |
default: not_very_secret_api_key | |
required: false | |
user: | |
type: string | |
description: username to launch the galaxy daemon | |
default: galaxy | |
required: false | |
install_path: | |
type: string | |
description: path to install the galaxy tool | |
default: /home/galaxy/galaxy | |
required: false | |
export_dir: | |
type: string | |
description: path to store galaxy data | |
default: /export | |
required: false | |
version: | |
type: string | |
description: galaxy version to install | |
default: master | |
required: false | |
instance_description: | |
type: string | |
description: galaxy instance description | |
default: "INDIGO Galaxy test" | |
instance_key_pub: | |
type: string | |
description: galaxy instance ssh public key | |
default: your_ssh_public_key | |
flavor: | |
type: string | |
description: name of the Galaxy flavor | |
required: false | |
default: galaxy-no-tools | |
reference_data: | |
type: boolean | |
description: Install Reference data | |
default: true | |
required: false | |
requirements: | |
- lrms: | |
capability: tosca.capabilities.indigo.LRMS | |
node: tosca.nodes.indigo.LRMS.FrontEnd | |
relationship: tosca.relationships.HostedOn | |
artifacts: | |
nfs_role: | |
file: indigo-dc.nfs,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
galaxy_role: | |
file: indigo-dc.galaxycloud,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/galaxy/galaxy_install.yml | |
inputs: | |
galaxy_install_path: { get_property: [ SELF, install_path ] } | |
galaxy_user: { get_property: [ SELF, user ] } | |
galaxy_admin: { get_property: [ SELF, admin_email ] } | |
galaxy_admin_api_key: { get_property: [ SELF, admin_api_key ] } | |
galaxy_lrms: { get_property: [ SELF, lrms, type ] } | |
galaxy_version: { get_property: [ SELF, version ] } | |
galaxy_instance_description: { get_property: [ SELF, instance_description ] } | |
galaxy_instance_key_pub: { get_property: [ SELF, instance_key_pub ] } | |
export_dir: { get_property: [ SELF, export_dir ] } | |
galaxy_flavor: { get_property: [ SELF, flavor ] } | |
get_refdata: { get_property: [ SELF, reference_data ] } | |
tosca.nodes.indigo.GalaxyPortalAndStorage: | |
derived_from: tosca.nodes.indigo.GalaxyPortal | |
properties: | |
storage_encryption: | |
type: boolean | |
description: Enable storage encryption using Vault to store secrets and LUKS to encrypt | |
default: false | |
required: true | |
vault_url: | |
type: string | |
description: Hashicorp Vault server url | |
default: vault_url | |
required: false | |
vault_wrapping_token: | |
type: string | |
description: Vault Wrapping token to write secret | |
default: not_a_valid_token | |
required: false | |
vault_secret_path: | |
type: string | |
description: Vault path to store secret | |
default: path_to_secret | |
required: false | |
vault_secret_key: | |
type: string | |
description: Vault secret key name | |
default: secret_key_name | |
required: false | |
wn_ips: | |
type: list | |
entry_schema: | |
type: string | |
description: List of IPs of the WNs | |
required: false | |
default: [] | |
artifacts: | |
nfs_role: | |
file: indigo-dc.nfs,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
galaxy_os_role: | |
file: indigo-dc.galaxycloud-os,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
galaxy_role: | |
file: indigo-dc.galaxycloud,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/galaxy/galaxy_os_install.yml | |
inputs: | |
storage_encryption: { get_property: [ SELF, storage_encryption ] } | |
vault_url: { get_property: [ SELF, vault_url ] } | |
vault_wrapping_token: { get_property: [ SELF, vault_wrapping_token ] } | |
vault_secret_path: { get_property: [ SELF, vault_secret_path ] } | |
vault_secret_key: { get_property: [ SELF, vault_secret_key ] } | |
wn_ips: { get_property: [ SELF, wn_ips ] } | |
galaxy_install_path: { get_property: [ SELF, install_path ] } | |
galaxy_user: { get_property: [ SELF, user ] } | |
galaxy_admin: { get_property: [ SELF, admin_email ] } | |
galaxy_admin_api_key: { get_property: [ SELF, admin_api_key ] } | |
galaxy_lrms: { get_property: [ SELF, lrms, type ] } | |
galaxy_version: { get_property: [ SELF, version ] } | |
galaxy_instance_description: { get_property: [ SELF, instance_description ] } | |
galaxy_instance_key_pub: { get_property: [ SELF, instance_key_pub ] } | |
export_dir: { get_property: [ SELF, export_dir ] } | |
galaxy_flavor: { get_property: [ SELF, flavor ] } | |
get_refdata: { get_property: [ SELF, reference_data ] } | |
tosca.nodes.indigo.GalaxyPortalFastConfig: | |
derived_from: tosca.nodes.indigo.GalaxyPortalAndStorage | |
artifacts: | |
nfs_role: | |
file: indigo-dc.nfs,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
galaxy_os_role: | |
file: indigo-dc.galaxycloud-os,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
galaxy_role_fastconfig: | |
file: indigo-dc.galaxycloud-fastconfig,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/galaxy/galaxy_fastconfig.yml | |
inputs: | |
storage_encryption: { get_property: [ SELF, storage_encryption ] } | |
vault_url: { get_property: [ SELF, vault_url ] } | |
vault_wrapping_token: { get_property: [ SELF, vault_wrapping_token ] } | |
vault_secret_path: { get_property: [ SELF, vault_secret_path ] } | |
vault_secret_key: { get_property: [ SELF, vault_secret_key ] } | |
wn_ips: { get_property: [ SELF, wn_ips ] } | |
galaxy_install_path: { get_property: [ SELF, install_path ] } | |
galaxy_user: { get_property: [ SELF, user ] } | |
galaxy_admin: { get_property: [ SELF, admin_email ] } | |
galaxy_admin_api_key: { get_property: [ SELF, admin_api_key ] } | |
galaxy_lrms: { get_property: [ SELF, lrms, type ] } | |
galaxy_version: { get_property: [ SELF, version ] } | |
galaxy_instance_description: { get_property: [ SELF, instance_description ] } | |
galaxy_instance_key_pub: { get_property: [ SELF, instance_key_pub ] } | |
export_dir: { get_property: [ SELF, export_dir ] } | |
galaxy_flavor: { get_property: [ SELF, flavor ] } | |
get_refdata: { get_property: [ SELF, reference_data ] } | |
tosca.nodes.indigo.GalaxyWN: | |
derived_from: tosca.nodes.SoftwareComponent | |
metadata: | |
icon: /images/galaxy.png | |
properties: | |
front_end_ip: | |
type: string | |
description: IP of the Front-End node | |
required: true | |
export_dir: | |
type: string | |
description: path to store galaxy data | |
default: /export | |
required: true | |
requirements: | |
- host: | |
capability: tosca.capabilities.Container | |
node: tosca.nodes.Compute | |
relationship: tosca.relationships.HostedOn | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/galaxy/galaxy_wn_configure.yml | |
inputs: | |
galaxy_front_end_ip: { get_property: [ SELF, front_end_ip ] } | |
export_dir: { get_property: [ SELF, export_dir ] } | |
tosca.nodes.indigo.GalaxyWNCVMFS: | |
derived_from: tosca.nodes.indigo.GalaxyWN | |
properties: | |
storage_encryption: | |
type: boolean | |
description: Install api when storage is encrypted | |
default: false | |
reference_data: | |
type: boolean | |
description: Install Reference data | |
default: true | |
required: true | |
refdata_cvmfs_configuration: | |
type: string | |
description: Configure cvmfs or load preconfigured repository | |
default: 'cvmfs_preconfigured' | |
required: false | |
refdata_cvmfs_repository_name: | |
type: string | |
description: CernVM-FS repository name | |
default: 'elixir-italy.galaxy.refdata' | |
required: false | |
refdata_cvmfs_server_url: | |
type: string | |
description: CernVM-FS server, replica or stratum-zero | |
default: 'server_url' | |
required: false | |
refdata_cvmfs_key_file: | |
type: string | |
description: CernVM-FS public key | |
default: 'not_a_key' | |
required: false | |
refdata_cvmfs_proxy_url: | |
type: string | |
description: CernVM-FS proxy url | |
default: 'DIRECT' | |
required: false | |
refdata_cvmfs_proxy_port: | |
type: integer | |
description: CernVM-FS proxy port | |
default: 80 | |
required: false | |
refdata_dir: | |
type: string | |
description: path to store galaxy reference data | |
default: /cvmfs | |
required: false | |
requirements: | |
- host: | |
capability: tosca.capabilities.Container | |
node: tosca.nodes.Compute | |
relationship: tosca.relationships.HostedOn | |
artifacts: | |
os_role: | |
file: indigo-dc.galaxycloud-os,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
cvmfs_role: | |
file: indigo-dc.cvmfs-client,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/galaxy/galaxy_wn_configure_cvmfs.yml | |
inputs: | |
galaxy_front_end_ip: { get_property: [ SELF, front_end_ip ] } | |
export_dir: { get_property: [ SELF, export_dir ] } | |
storage_encryption: { get_property: [ SELF, storage_encryption ] } | |
get_refdata: { get_property: [ SELF, reference_data ] } | |
refdata_cvmfs_configuration: { get_property: [ SELF, refdata_cvmfs_configuration ] } | |
refdata_cvmfs_repository_name: { get_property: [ SELF, refdata_cvmfs_repository_name ] } | |
refdata_cvmfs_server_url: { get_property: [ SELF, refdata_cvmfs_server_url ] } | |
refdata_cvmfs_key_file: { get_property: [ SELF, refdata_cvmfs_key_file ] } | |
refdata_cvmfs_proxy_url: { get_property: [ SELF, refdata_cvmfs_proxy_url ] } | |
refdata_cvmfs_proxy_port: { get_property: [ SELF, refdata_cvmfs_proxy_port ] } | |
refdata_dir: { get_property: [ SELF, refdata_dir ] } | |
tosca.nodes.indigo.GalaxyShedTool: | |
derived_from: tosca.nodes.WebApplication | |
metadata: | |
icon: /images/galaxy-toolshed.png | |
properties: | |
flavor: | |
type: string | |
description: name of the Galaxy flavor | |
required: true | |
default: galaxy-no-tools | |
admin_api_key: | |
type: string | |
description: key to access the API with admin role | |
default: not_very_secret_api_key | |
required: false | |
version: | |
type: string | |
description: galaxy version installed | |
default: master | |
required: false | |
reference_data: | |
type: boolean | |
description: Install Reference data | |
default: true | |
required: false | |
requirements: | |
- host: | |
capability: tosca.capabilities.Container | |
node: tosca.nodes.indigo.GalaxyPortal | |
relationship: tosca.relationships.HostedOn | |
artifacts: | |
galaxy_role: | |
file: indigo-dc.galaxycloud-tools,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/galaxy/galaxy_tools_configure.yml | |
inputs: | |
galaxy_flavor: { get_property: [ SELF, flavor ] } | |
galaxy_admin_api_key: { get_property: [ HOST, admin_api_key ] } | |
galaxy_version: { get_property: [ SELF, version ] } | |
get_refdata: { get_property: [ SELF, reference_data ] } | |
tosca.nodes.indigo.GalaxyReferenceData: | |
derived_from: tosca.nodes.WebApplication | |
metadata: | |
icon: /images/galaxydata.png | |
properties: | |
reference_data: | |
type: boolean | |
description: Install Reference data | |
default: true | |
required: true | |
refdata_cvmfs_configuration: | |
type: string | |
description: Configure cvmfs or load preconfigured repository | |
default: 'cvmfs_preconfigured' | |
required: false | |
refdata_cvmfs_repository_name: | |
type: string | |
description: CernVM-FS repository name | |
default: 'elixir-italy.galaxy.refdata' | |
required: false | |
refdata_cvmfs_server_url: | |
type: string | |
description: CernVM-FS server, replica or stratum-zero | |
default: 'server_url' | |
required: false | |
refdata_cvmfs_key_file: | |
type: string | |
description: CernVM-FS public key | |
default: 'not_a_key' | |
required: false | |
refdata_cvmfs_proxy_url: | |
type: string | |
description: CernVM-FS proxy url | |
default: 'DIRECT' | |
required: false | |
refdata_cvmfs_proxy_port: | |
type: integer | |
description: CernVM-FS proxy port | |
default: 80 | |
required: false | |
refdata_dir: | |
type: string | |
description: path to store galaxy reference data | |
default: /cvmfs | |
required: false | |
flavor: | |
type: string | |
description: name of the Galaxy flavor | |
required: true | |
default: galaxy-no-tools | |
requirements: | |
- host: | |
capability: tosca.capabilities.Container | |
node: tosca.nodes.indigo.GalaxyPortal | |
relationship: tosca.relationships.HostedOn | |
artifacts: | |
cvmfs_role: | |
file: indigo-dc.cvmfs-client,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
galaxy_role: | |
file: indigo-dc.galaxycloud-refdata,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/galaxy/galaxy_redfata_configure.yml | |
inputs: | |
get_refdata: { get_property: [ SELF, reference_data ] } | |
refdata_cvmfs_configuration: { get_property: [ SELF, refdata_cvmfs_configuration ] } | |
refdata_cvmfs_repository_name: { get_property: [ SELF, refdata_cvmfs_repository_name ] } | |
refdata_cvmfs_server_url: { get_property: [ SELF, refdata_cvmfs_server_url ] } | |
refdata_cvmfs_key_file: { get_property: [ SELF, refdata_cvmfs_key_file ] } | |
refdata_cvmfs_proxy_url: { get_property: [ SELF, refdata_cvmfs_proxy_url ] } | |
refdata_cvmfs_proxy_port: { get_property: [ SELF, refdata_cvmfs_proxy_port ] } | |
refdata_dir: { get_property: [ SELF, refdata_dir ] } | |
galaxy_flavor: { get_property: [ SELF, flavor ] } | |
tosca.nodes.indigo.GalaxyPortalDocker: | |
derived_from: tosca.nodes.indigo.GalaxyPortalAndStorage | |
artifacts: | |
nfs_role: | |
file: indigo-dc.nfs,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
galaxy_os_role: | |
file: indigo-dc.galaxycloud-os,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
docker_role: | |
file: indigo-dc.docker,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
galaxy_role_docker: | |
file: indigo-dc.galaxycloud_docker,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/galaxy/galaxy_docker.yml | |
inputs: | |
storage_encryption: { get_property: [ SELF, storage_encryption ] } | |
vault_url: { get_property: [ SELF, vault_url ] } | |
vault_wrapping_token: { get_property: [ SELF, vault_wrapping_token ] } | |
vault_secret_path: { get_property: [ SELF, vault_secret_path ] } | |
vault_secret_key: { get_property: [ SELF, vault_secret_key ] } | |
galaxy_install_path: { get_property: [ SELF, install_path ] } | |
galaxy_user: { get_property: [ SELF, user ] } | |
galaxy_admin: { get_property: [ SELF, admin_email ] } | |
galaxy_admin_api_key: { get_property: [ SELF, admin_api_key ] } | |
galaxy_lrms: { get_property: [ SELF, lrms, type ] } | |
galaxy_version: { get_property: [ SELF, version ] } | |
galaxy_instance_description: { get_property: [ SELF, instance_description ] } | |
galaxy_instance_key_pub: { get_property: [ SELF, instance_key_pub ] } | |
export_dir: { get_property: [ SELF, export_dir ] } | |
galaxy_flavor: { get_property: [ SELF, flavor ] } | |
get_refdata: { get_property: [ SELF, reference_data ] } | |
tosca.nodes.indigo.TeskAPI: | |
derived_from: tosca.nodes.WebServer | |
properties: | |
auth_mode: | |
type: string | |
description: Authentication mode | |
default: noauth | |
required: false | |
mount_ftp: | |
description: Flag used to specify that the ftp has to be enabled | |
type: boolean | |
required: false | |
default: true | |
teskmaster_ftp_url: | |
type: string | |
description: ftp url | |
default: 'ftp://ftp_url' | |
required: false | |
teskmaster_ftp_user: | |
type: string | |
description: ftp username | |
default: 'user' | |
required: false | |
teskmaster_ftp_password: | |
type: string | |
description: ftp password | |
default: 'password' | |
required: false | |
requirements: | |
- lrms: | |
capability: tosca.capabilities.indigo.LRMS | |
node: tosca.nodes.indigo.LRMS.FrontEnd | |
relationship: tosca.relationships.HostedOn | |
artifacts: | |
galaxy_role: | |
file: indigo-dc.tesk,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/ga4gh_cloud_apis/tesk_install.yml | |
inputs: | |
auth_mode: { get_property: [ SELF, auth_mode ] } | |
mount_ftp: { get_property: [ SELF, mount_ftp ] } | |
teskmaster_ftp_url: { get_property: [ SELF, teskmaster_ftp_url ] } | |
teskmaster_ftp_user: { get_property: [ SELF, teskmaster_ftp_user ] } | |
teskmaster_ftp_password: { get_property: [ SELF, teskmaster_ftp_password ] } | |
tosca.nodes.indigo.ElasticCluster: | |
derived_from: tosca.nodes.SoftwareComponent | |
metadata: | |
icon: /images/ec3.png | |
properties: | |
secret_token: | |
type: string | |
description: Token to access CLUES web interface | |
default: not_very_secret_token | |
required: false | |
deployment_id: | |
type: string | |
description: ID of the deployment of this elastic cluster in the orchestrator | |
required: false | |
default: '' | |
orchestrator_url: | |
type: string | |
description: URL of the orchestrator | |
required: false | |
default: http://orchestrator01-indigo.cloud.ba.infn.it:8080/orchestrator | |
iam_access_token: | |
type: string | |
description: INDIGO IAM access token | |
required: false | |
default: iam_access_token | |
iam_clues_client_id: | |
type: string | |
description: INDIGO IAM client id to be used by CLUES | |
required: false | |
default: iam_clues_client_id | |
iam_clues_client_secret: | |
type: string | |
description: INDIGO IAM client secret to be used by CLUES | |
required: false | |
default: iam_clues_client_secret | |
marathon_credentials: | |
type: tosca.datatypes.Credential | |
description: Credentials to access the marathon endpoint from CLUES plugin | |
default: | |
protocol: http | |
user: admin | |
token: password | |
token_type: password | |
required: false | |
chronos_credentials: | |
type: tosca.datatypes.Credential | |
description: Credentials to access the chronos endpoint from CLUES plugin | |
default: | |
protocol: http | |
user: admin | |
token: password | |
token_type: password | |
required: false | |
mesos_credentials: | |
type: tosca.datatypes.Credential | |
description: Credentials to access the mesos endpoint from CLUES plugin | |
default: | |
protocol: http | |
user: admin | |
token: password | |
token_type: password | |
required: false | |
hybrid: | |
type: boolean | |
description: Flag to specify that this ElasticCluster will work in a hybrid environment | |
default: false | |
required: false | |
powermanager_plugin: | |
type: string | |
description: Plugin that will manage the VMs (indigo_orchestrator or im) | |
default: indigo_orchestrator | |
required: false | |
im_auth: | |
type: string | |
description: IM auth data | |
default: "" | |
required: false | |
artifacts: | |
clues_role: | |
file: indigo-dc.clues,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
im_role: | |
file: grycap.im,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
create: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/ec3/ec3_install.yml | |
inputs: | |
clues_secret_token: { get_property: [ SELF, secret_token ] } | |
clues_queue_system: { get_property: [ SELF, lrms, type ] } | |
ec3_max_instances: { get_property: [ SELF, wn, max_instances] } | |
ec3_deployment_id: { get_property: [ SELF, deployment_id] } | |
orchestrator_url: { get_property: [ SELF, orchestrator_url] } | |
ec3_iam_access_token: { get_property: [ SELF, iam_access_token] } | |
ec3_iam_clues_client_id: { get_property: [ SELF, iam_clues_client_id] } | |
ec3_iam_clues_client_secret: { get_property: [ SELF, iam_clues_client_secret] } | |
clues_marathon_credentials: { get_property: [ SELF, marathon_credentials] } | |
clues_chronos_credentials: { get_property: [ SELF, chronos_credentials] } | |
clues_mesos_credentials: { get_property: [ SELF, mesos_credentials] } | |
clues_powermanager_plugin: { get_property: [ SELF, powermanager_plugin] } | |
im_auth_data: { get_property: [ SELF, im_auth] } | |
requirements: | |
- wn: | |
capability: tosca.capabilities.Scalable | |
node: tosca.nodes.indigo.LRMS.WorkerNode | |
relationship: tosca.relationships.indigo.Manages | |
- lrms: | |
capability: tosca.capabilities.indigo.LRMS | |
node: tosca.nodes.indigo.LRMS.FrontEnd | |
relationship: tosca.relationships.HostedOn | |
tosca.nodes.indigo.LRMS.WorkerNode: | |
derived_from: tosca.nodes.SoftwareComponent | |
properties: | |
front_end_ip: | |
type: string | |
description: IP of the Front-End node | |
required: true | |
hybrid: | |
type: boolean | |
description: Flag to specify that this WorkerNode will work in a hybrid environment | |
default: false | |
required: false | |
public_front_end_ip: | |
type: string | |
description: Public IP of the Front-End node | |
required: false | |
default: '' | |
capabilities: | |
wn: | |
type: tosca.capabilities.Scalable | |
valid_source_types: [tosca.nodes.indigo.ElasticCluster] | |
requirements: | |
- host: | |
capability: tosca.capabilities.Container | |
node: tosca.nodes.Compute | |
relationship: tosca.relationships.HostedOn | |
tosca.nodes.indigo.LRMS.WorkerNode.Torque: | |
derived_from: tosca.nodes.indigo.LRMS.WorkerNode | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/lrms/torque/torque_wn_install.yml | |
inputs: | |
torque_front_end_ip: { get_property: [ SELF, front_end_ip ] } | |
wn_hybrid_cluster: { get_property: [ SELF, hybrid] } | |
tosca.nodes.indigo.LRMS.WorkerNode.Slurm: | |
derived_from: tosca.nodes.indigo.LRMS.WorkerNode | |
metadata: | |
icon: /images/slurm.png | |
artifacts: | |
slurm_role: | |
file: indigo-dc.slurm,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
nfs_role: | |
file: indigo-dc.nfs,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
openvpn_role: | |
file: indigo-dc.indigovr,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/lrms/slurm/slurm_wn_install.yml | |
inputs: | |
slurm_front_end_ip: { get_property: [ SELF, front_end_ip ] } | |
wn_hybrid_cluster: { get_property: [ SELF, hybrid] } | |
slurm_public_front_end_ip: { get_property: [ SELF, public_front_end_ip ] } | |
tosca.nodes.indigo.LRMS.WorkerNode.SlurmGalaxy: | |
derived_from: tosca.nodes.indigo.LRMS.WorkerNode.Slurm | |
artifacts: | |
slurm_role: | |
file: indigo-dc.slurm,cons_res | |
type: tosca.artifacts.AnsibleGalaxy.role | |
nfs_role: | |
file: indigo-dc.nfs,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
openvpn_role: | |
file: indigo-dc.indigovr,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/lrms/slurm/slurm_wn_install.yml | |
inputs: | |
slurm_front_end_ip: { get_property: [ SELF, front_end_ip ] } | |
wn_hybrid_cluster: { get_property: [ SELF, hybrid] } | |
slurm_public_front_end_ip: { get_property: [ SELF, public_front_end_ip ] } | |
tosca.nodes.indigo.LRMS.FrontEnd: | |
derived_from: tosca.nodes.SoftwareComponent | |
properties: | |
wn_ips: | |
type: list | |
entry_schema: | |
type: string | |
description: List of IPs of the WNs | |
required: false | |
default: [] | |
hybrid: | |
type: boolean | |
description: Flag to specify that this FrontEnd will work in a hybrid environment | |
default: false | |
required: false | |
capabilities: | |
lrms: | |
type: tosca.capabilities.indigo.LRMS | |
requirements: | |
- host: | |
capability: tosca.capabilities.Container | |
node: tosca.nodes.Compute | |
relationship: tosca.relationships.HostedOn | |
tosca.nodes.indigo.LRMS.FrontEnd.Torque: | |
derived_from: tosca.nodes.indigo.LRMS.FrontEnd | |
capabilities: | |
lrms: | |
type: tosca.capabilities.indigo.LRMS.Torque | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/lrms/torque/torque_fe_install.yml | |
inputs: | |
torque_wn_ips: { get_property: [ SELF, wn_ips ] } | |
fe_hybrid_cluster: { get_property: [ SELF, hybrid] } | |
tosca.nodes.indigo.LRMS.FrontEnd.Slurm: | |
derived_from: tosca.nodes.indigo.LRMS.FrontEnd | |
metadata: | |
icon: /images/slurm.png | |
properties: | |
wn_num: | |
type: integer | |
description: Number of WNs | |
required: false | |
default: -1 | |
artifacts: | |
slurm_role: | |
file: indigo-dc.slurm,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
nfs_role: | |
file: indigo-dc.nfs,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
openvpn_role: | |
file: indigo-dc.indigovr,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
capabilities: | |
lrms: | |
type: tosca.capabilities.indigo.LRMS.Slurm | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/lrms/slurm/slurm_fe_install.yml | |
inputs: | |
wn_num: { get_property: [ SELF, wn_num ] } | |
wn_ips: { get_property: [ SELF, wn_ips ] } | |
front_end_ip: { get_attribute: [ HOST, private_address, 0 ] } | |
fe_hybrid_cluster: { get_property: [ SELF, hybrid] } | |
tosca.nodes.indigo.LRMS.FrontEnd.SlurmGalaxy: | |
derived_from: tosca.nodes.indigo.LRMS.FrontEnd.Slurm | |
artifacts: | |
slurm_role: | |
file: indigo-dc.slurm,cons_res | |
type: tosca.artifacts.AnsibleGalaxy.role | |
nfs_role: | |
file: indigo-dc.nfs,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
openvpn_role: | |
file: indigo-dc.indigovr,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
capabilities: | |
lrms: | |
type: tosca.capabilities.indigo.LRMS.Slurm | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/lrms/slurm/slurm_fe_install.yml | |
inputs: | |
wn_num: { get_property: [ SELF, wn_num ] } | |
wn_ips: { get_property: [ SELF, wn_ips ] } | |
front_end_ip: { get_attribute: [ HOST, private_address, 0 ] } | |
fe_hybrid_cluster: { get_property: [ SELF, hybrid] } | |
tosca.nodes.indigo.LRMS.FrontEnd.Local: | |
derived_from: tosca.nodes.indigo.LRMS.FrontEnd | |
capabilities: | |
lrms: | |
type: tosca.capabilities.indigo.LRMS.Local | |
tosca.nodes.indigo.Container.Runtime.Docker: | |
derived_from: tosca.nodes.Root | |
metadata: | |
icon: /images/docker.png | |
capabilities: | |
host: | |
type: tosca.capabilities.indigo.Container.Docker | |
scalable: | |
type: tosca.capabilities.Scalable | |
tosca.nodes.indigo.Container.Application.Docker: | |
derived_from: tosca.nodes.Container.Application.Docker | |
properties: | |
command: | |
required: no | |
type: string | |
uris: | |
required: no | |
type: list | |
entry_schema: | |
type: string | |
environment_variables: | |
required: no | |
type: map | |
entry_schema: | |
type: string | |
secrets: | |
required: no | |
type: map | |
entry_schema: | |
type: string | |
constraints: | |
required: no | |
type: list | |
entry_schema: | |
type: list | |
entry_schema: | |
type: string | |
labels: | |
required: no | |
type: map | |
entry_schema: | |
type: string | |
privileged: | |
required: no | |
type: boolean | |
default: false | |
force_pull_image: | |
required: no | |
type: boolean | |
default: false | |
tosca.nodes.indigo.Container.Application.Docker.Chronos: | |
derived_from: tosca.nodes.indigo.Container.Application.Docker | |
metadata: | |
icon: /images/chronos.jpg | |
properties: | |
schedule: | |
required: no | |
type: string | |
command: | |
required: yes | |
type: string | |
description: | |
required: no | |
type: string | |
retries: | |
required: no | |
type: integer | |
epsilon: | |
required: no | |
type: string | |
default: PT10S | |
privileged: | |
required: no | |
type: boolean | |
default: true | |
force_pull_image: | |
required: no | |
type: boolean | |
default: true | |
capabilities: | |
parent_job: | |
type: tosca.capabilities.indigo.Container.Application.Docker.Chronos | |
valid_source_types: [tosca.nodes.indigo.Container.Application.Docker.Chronos] | |
occurrences: [0, UNBOUNDED] | |
requirements: | |
- parent_job: | |
capability: tosca.capabilities.indigo.Container.Application.Docker.Chronos | |
node: tosca.nodes.indigo.Container.Application.Docker.Chronos | |
relationship: tosca.relationships.DependsOn | |
occurrences: [0, 1] | |
tosca.nodes.indigo.DariahRepository: | |
derived_from: tosca.nodes.SoftwareComponent | |
metadata: | |
icon: /images/dariah.png | |
properties: | |
marathon_password: | |
type: string | |
required: yes | |
cache_cpus: | |
type: float | |
required: no | |
default: 1.0 | |
cache_mem: | |
type: integer | |
required: no | |
default: 1024 | |
cache_image: | |
type: string | |
required: no | |
default: 'redis' | |
db_cpus: | |
type: float | |
required: no | |
default: 1.0 | |
db_mem: | |
type: integer | |
required: no | |
default: 1024 | |
db_image: | |
type: string | |
required: no | |
default: 'postgres' | |
es_cpus: | |
type: float | |
required: no | |
default: 1.0 | |
es_mem: | |
type: integer | |
required: no | |
default: 1024 | |
es_image: | |
type: string | |
required: no | |
default: 'indigodatacloudapps/dariah-repository:elasticsearch' | |
mq_cpus: | |
type: float | |
required: no | |
default: 1.0 | |
mq_mem: | |
type: integer | |
required: no | |
default: 1024 | |
mq_image: | |
type: string | |
required: no | |
default: 'rabbitmq:3-management' | |
statsd_cpus: | |
type: float | |
required: no | |
default: 1.0 | |
statsd_mem: | |
type: integer | |
required: no | |
default: 1024 | |
statsd_image: | |
type: string | |
required: no | |
default: 'indigodatacloudapps/dariah-repository:statsd' | |
web_cpus: | |
type: float | |
required: no | |
default: 1.0 | |
web_mem: | |
type: integer | |
required: no | |
default: 1024 | |
web_image: | |
type: string | |
required: no | |
default: 'indigodatacloudapps/dariah-repository:web' | |
worker_cpus: | |
type: float | |
required: no | |
default: 1.0 | |
worker_mem: | |
type: integer | |
required: no | |
default: 1024 | |
worker_image: | |
type: string | |
required: no | |
default: 'indigodatacloudapps/dariah-repository:web' | |
artifacts: | |
dariahrepo_role: | |
file: indigo-dc.dariahrepo,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
create: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/mesos/dariahrepo-setup.yml | |
inputs: | |
marathon_password: { get_property: [ SELF, marathon_password ] } | |
dariahrepo_app_cache_cpus: { get_property: [ SELF, cache_cpus ] } | |
dariahrepo_app_cache_mem: { get_property: [ SELF, cache_mem ] } | |
dariahrepo_app_cache_image: { get_property: [ SELF, cache_image ] } | |
dariahrepo_app_db_cpus: { get_property: [ SELF, db_cpus ] } | |
dariahrepo_app_db_mem: { get_property: [ SELF, db_mem ] } | |
dariahrepo_app_db_image: { get_property: [ SELF, db_image ] } | |
dariahrepo_app_es_cpus: { get_property: [ SELF, es_cpus ] } | |
dariahrepo_app_es_mem: { get_property: [ SELF, es_mem ] } | |
dariahrepo_app_es_image: { get_property: [ SELF, es_image ] } | |
dariahrepo_app_mq_cpus: { get_property: [ SELF, mq_cpus ] } | |
dariahrepo_app_mq_mem: { get_property: [ SELF, mq_mem ] } | |
dariahrepo_app_mq_image: { get_property: [ SELF, mq_image ] } | |
dariahrepo_app_statsd_cpus: { get_property: [ SELF, statsd_cpus ] } | |
dariahrepo_app_statsd_mem: { get_property: [ SELF, statsd_mem ] } | |
dariahrepo_app_statsd_image: { get_property: [ SELF, statsd_image ] } | |
dariahrepo_app_web_cpus: { get_property: [ SELF, web_cpus ] } | |
dariahrepo_app_web_mem: { get_property: [ SELF, web_mem ] } | |
dariahrepo_app_web_image: { get_property: [ SELF, web_image ] } | |
dariahrepo_app_worker_cpus: { get_property: [ SELF, worker_cpus ] } | |
dariahrepo_app_worker_mem: { get_property: [ SELF, worker_mem ] } | |
dariahrepo_app_worker_image: { get_property: [ SELF, worker_image ] } | |
requirements: | |
- host: | |
capability: tosca.capabilities.indigo.MesosMaster | |
relationship: tosca.relationships.HostedOn | |
node: tosca.nodes.SoftwareComponent | |
occurrences: [1, 1] | |
tosca.nodes.indigo.TensorflowOnMesos: | |
derived_from: tosca.nodes.SoftwareComponent | |
metadata: | |
icon: /images/tensorflow.png | |
properties: | |
marathon_password: | |
type: string | |
required: yes | |
marathon_username: | |
type: string | |
default: admin | |
required: no | |
marathon_protocol: | |
type: string | |
required: no | |
default: https | |
marathon_host: | |
type: string | |
required: no | |
default: localhost | |
marathon_port: | |
required: no | |
type: integer | |
default: 8443 | |
tensorflow_image: | |
required: no | |
type: string | |
default: 'tensorflow/tensorflow:latest-gpu' | |
tensorflow_cpus: | |
type: float | |
required: no | |
default: 1.0 | |
tensorflow_gpus: | |
type: integer | |
required: no | |
default: 1 | |
tensorflow_mem: | |
type: integer | |
required: no | |
default: 1024 | |
tensorflow_port: | |
type: integer | |
required: no | |
default: 10001 | |
tensorflow_password: | |
type: string | |
required: yes | |
interfaces: | |
Standard: | |
create: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/mesos/start_tensorflow.yml | |
inputs: | |
marathon_username: { get_property: [ SELF, marathon_username ] } | |
marathon_password: { get_property: [ SELF, marathon_password ] } | |
marathon_protocol: { get_property: [ SELF, marathon_protocol ] } | |
marathon_host: { get_property: [ SELF, marathon_host ] } | |
marathon_port: { get_property: [ SELF, marathon_port ] } | |
marathon_tensorflow_image: { get_property: [ SELF, tensorflow_image ] } | |
marathon_tensorflow_cpus: { get_property: [ SELF, tensorflow_cpus ] } | |
marathon_tensorflow_gpus: { get_property: [ SELF, tensorflow_gpus ] } | |
marathon_tensorflow_mem: { get_property: [ SELF, tensorflow_mem ] } | |
marathon_tensorflow_password: { get_property: [ SELF, tensorflow_password ] } | |
marathon_tensorflow_port: { get_property: [ SELF, tensorflow_port ] } | |
tosca.nodes.indigo.Container.Application.Docker.Marathon: | |
derived_from: tosca.nodes.indigo.Container.Application.Docker | |
metadata: | |
icon: /images/marathon.png | |
attributes: | |
load_balancer_ips: | |
type: list | |
entry_schema: string | |
properties: | |
force_pull_image: | |
required: no | |
type: boolean | |
default: true | |
enable_https: | |
required: no | |
type: boolean | |
default: false | |
artifacts: | |
image: | |
file: "" | |
type: "tosca.artifacts.Deployment.Image.Container.Docker" | |
tosca.nodes.indigo.LRMS.FrontEnd.Mesos: | |
derived_from: tosca.nodes.indigo.LRMS.FrontEnd | |
metadata: | |
icon: /images/mesos.png | |
capabilities: | |
lrms: | |
type: tosca.capabilities.indigo.LRMS.Mesos | |
host: | |
type: tosca.capabilities.indigo.MesosMaster | |
properties: | |
# Set the current data of the mesos server | |
# but it can also specified in the TOSCA document | |
mesos_masters_list: | |
type: list | |
entry_schema: | |
type: string | |
required: no | |
default: ['127.0.0.1'] | |
mesos_authenticate_http: | |
type: boolean | |
required: no | |
default: true | |
mesos_username: | |
type: string | |
required: no | |
default: 'admin' | |
mesos_password: | |
type: string | |
required: no | |
default: 'admin' | |
marathon_enable_ssl: | |
type: boolean | |
required: no | |
default: true | |
marathon_username: | |
type: string | |
required: no | |
default: admin | |
marathon_password: | |
type: string | |
required: yes | |
enable_chronos: | |
type: boolean | |
required: no | |
default: true | |
chronos_enable_ssl: | |
type: boolean | |
required: no | |
default: true | |
chronos_username: | |
type: string | |
required: no | |
default: admin | |
chronos_password: | |
type: string | |
required: no | |
default: admin | |
enable_consul_sd: | |
type: boolean | |
required: no | |
default: true | |
enable_nfs_share: | |
type: boolean | |
required: no | |
default: false | |
enable_gpu_support: | |
type: boolean | |
required: no | |
default: false | |
artifacts: | |
docker_agent_role: | |
file: indigo-dc.docker,2.1.2-beta | |
#file: git+https://github.com/indigo-dc/ansible-role-docker.git,fix/issue_13 | |
type: tosca.artifacts.AnsibleGalaxy.role | |
consul_agent_role: | |
file: indigo-dc.consul,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
zookeeper_agent_role: | |
file: indigo-dc.zookeeper,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
mesos_agent_role: | |
file: indigo-dc.mesos,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
marathon_agent_role: | |
file: indigo-dc.marathon,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
chronos_agent_role: | |
file: indigo-dc.chronos,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
nfs_role: | |
file: indigo-dc.nfs,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
openvpn_role: | |
file: indigo-dc.indigovr,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/mesos/mesos_master_install.yml | |
inputs: | |
mesos_masters_list_ips: { get_property: [ SELF, mesos_masters_list ] } | |
mesos_authenticate_http: { get_property: [ SELF, mesos_authenticate_http ] } | |
mesos_username: { get_property: [ SELF, mesos_username ] } | |
mesos_password: { get_property: [ SELF, mesos_password ] } | |
marathon_enable_ssl: { get_property: [ SELF, marathon_enable_ssl ] } | |
marathon_user: { get_property: [ SELF, marathon_username ] } | |
marathon_pass: { get_property: [ SELF, marathon_password ] } | |
enable_chronos: { get_property: [ SELF, enable_chronos ] } | |
chronos_enable_ssl: { get_property: [ SELF, chronos_enable_ssl ] } | |
chronos_user: { get_property: [ SELF, chronos_username ] } | |
chronos_pass: { get_property: [ SELF, chronos_password ] } | |
enable_consul_sd: { get_property: [ SELF, enable_consul_sd ] } | |
enable_nfs_share: { get_property: [ SELF, enable_nfs_share ] } | |
marathon_enable_gpu_support: { get_property: [ SELF, enable_gpu_support ] } | |
mesos_enable_gpu_support: { get_property: [ SELF, enable_gpu_support ] } | |
chronos_enable_gpu_support: { get_property: [ SELF, enable_gpu_support ] } | |
wn_ips: { get_property: [ SELF, wn_ips ] } | |
fe_hybrid_cluster: { get_property: [ SELF, hybrid] } | |
tosca.nodes.indigo.MesosMaster: | |
derived_from: tosca.nodes.indigo.LRMS.FrontEnd.Mesos | |
tosca.nodes.indigo.CmsServices: | |
derived_from: tosca.nodes.SoftwareComponent | |
metadata: | |
icon: /images/cms.png | |
properties: | |
cms_local_site: | |
type: string | |
required: yes | |
cms_squid_image: | |
type: string | |
required: no | |
default: "spiga/frontiersquidv1" | |
cms_wn_image: | |
type: string | |
default: "cloudpg/dodas-cms:cern" | |
required: no | |
cms_proxycache_image: | |
type: string | |
required: no | |
default: "cloudpg/ttscache" | |
cms_input_protocol: | |
type: string | |
required: no | |
default: 'xrootd' | |
mysquid_host: | |
type: string | |
required: yes | |
proxycache_host: | |
type: string | |
required: yes | |
iam_access_token: | |
type: string | |
description: INDIGO IAM access token | |
required: yes | |
iam_client_id: | |
type: string | |
description: INDIGO IAM client id | |
required: yes | |
iam_client_secret: | |
type: string | |
description: INDIGO IAM client secret | |
required: yes | |
marathon_username: | |
type: string | |
required: no | |
default: 'admin' | |
marathon_password: | |
type: string | |
required: no | |
default: 'admin' | |
cms_proxycache_token_manager: | |
type: string | |
required: no | |
default: 'ZOOKEEPER' | |
watts_endpoint: | |
type: string | |
required: no | |
default: 'https://dodas-tts.cloud.cnaf.infn.it' | |
iam_endpoint: | |
type: string | |
required: no | |
default: 'https://dodas-iam.cloud.cnaf.infn.it/' | |
iam_credential_endpoint: | |
type: string | |
required: no | |
default: 'https://dodas-tts.cloud.cnaf.infn.it/api/v2/iam/credential' | |
audience: | |
type: string | |
required: no | |
default: 'https://dodas-tts.cloud.cnaf.infn.it' | |
oneclient_token: | |
type: string | |
required: no | |
default: 'dummy' | |
oneprovider_name: | |
type: string | |
required: no | |
default: 'dummy' | |
master_ips: | |
required: yes | |
type: list | |
entry_schema: | |
type: string | |
artifacts: | |
cms_config_role: | |
file: indigo-dc.cms_config,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
start: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/mesos/cms_services_start.yml | |
inputs: | |
cms_config_mysquid_host: { get_property: [ SELF, mysquid_host ] } | |
cms_config_proxycache_host: { get_property: [ SELF, proxycache_host ] } | |
cms_config_iam_token: { get_property: [ SELF, iam_access_token ] } | |
cms_config_iam_client_id: { get_property: [ SELF, iam_client_id ] } | |
cms_config_iam_client_secret: { get_property: [ SELF, iam_client_secret ] } | |
cms_config_cms_local_site: { get_property: [ SELF, cms_local_site ] } | |
cms_config_squid_image: { get_property: [ SELF, cms_squid_image ] } | |
cms_config_wn_image: { get_property: [ SELF, cms_wn_image ] } | |
cms_config_proxycache_image: { get_property: [ SELF, cms_proxycache_image ]} | |
cms_input_protocol: { get_property: [ SELF, cms_input_protocol ] } | |
marathon_user: { get_property: [ SELF, marathon_username ] } | |
marathon_pass: { get_property: [ SELF, marathon_password ] } | |
zookeeper_host_list: { get_property: [ SELF, master_ips ] } | |
proxy_cache_manager: { get_property: [ SELF, cms_proxycache_token_manager ] } | |
proxy_tts: { get_property: [ SELF, watts_endpoint ] } | |
proxy_iam_endpoint: { get_property: [ SELF, iam_endpoint ] } | |
proxy_credential_endpoint: { get_property: [ SELF, iam_credential_endpoint ] } | |
proxy_audience: { get_property: [ SELF, audience ] } | |
oneclient_token: { get_property: [ SELF, oneclient_token ] } | |
oneprovider_name: { get_property: [ SELF, oneprovider_name ] } | |
requirements: | |
- host: | |
capability: tosca.capabilities.indigo.MesosMaster | |
relationship: tosca.relationships.HostedOn | |
node: tosca.nodes.SoftwareComponent | |
occurrences: [1, 1] | |
tosca.nodes.indigo.HTCondorClient: | |
derived_from: tosca.nodes.SoftwareComponent | |
properties: | |
condor_host: | |
type: string | |
required: yes | |
default: DUMMY | |
schedd_name: | |
type: string | |
required: yes | |
default: DUMMY | |
iam_client_id: | |
type: string | |
required: yes | |
default: DUMMY | |
iam_client_secret: | |
type: string | |
required: yes | |
default: DUMMY | |
iam_access_token: | |
type: string | |
required: yes | |
default: DUMMY | |
admin_DN: | |
type: string | |
required: yes | |
default: DUMMY | |
artifacts: | |
htcondor_client_config_role: | |
file: cloud-pg.ansible_role_condor_client,v2.0.0-dodas-rc3 | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
start: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/mesos/htcondor_client_config.yml | |
inputs: | |
condor_host: { get_property: [ SELF, condor_host ] } | |
schedd_name: { get_property: [ SELF, schedd_name ] } | |
iam_client_id: { get_property: [ SELF, iam_client_id ] } | |
iam_client_secret: { get_property: [ SELF, iam_client_secret ] } | |
iam_access_token: { get_property: [ SELF, iam_access_token ] } | |
admin_DN: { get_property: [ SELF, admin_DN ] } | |
tosca.nodes.indigo.HTCondorServices: | |
derived_from: tosca.nodes.SoftwareComponent | |
properties: | |
htcondor_config_condor_image: | |
type: string | |
required: no | |
config_mode: | |
type: string | |
required: yes | |
htcondor_config_condor_host: | |
type: string | |
required: no | |
htcondor_config_schedd_ip_pub: | |
type: string | |
required: yes | |
htcondor_config_schedd_ip: | |
type: string | |
required: yes | |
htcondor_config_ccb_ip: | |
type: string | |
required: yes | |
htcondor_config_ccb_address: | |
type: string | |
required: no | |
htcondor_config_high_port: | |
type: string | |
required: no | |
htcondor_config_low_port: | |
type: string | |
required: no | |
master_ips: | |
required: yes | |
type: list | |
entry_schema: | |
type: string | |
prepare_only: | |
type: boolean | |
required: yes | |
default: false | |
lb_ips: | |
required: yes | |
type: list | |
entry_schema: | |
type: string | |
proxycache_host: | |
type: string | |
required: yes | |
iam_access_token: | |
type: string | |
description: INDIGO IAM access token | |
required: yes | |
iam_client_id: | |
type: string | |
description: INDIGO IAM client id | |
required: yes | |
iam_client_secret: | |
type: string | |
description: INDIGO IAM client secret | |
required: yes | |
marathon_username: | |
type: string | |
required: no | |
default: 'admin' | |
marathon_password: | |
type: string | |
required: no | |
default: 'admin' | |
proxycache_token_manager: | |
type: string | |
required: no | |
default: 'ZOOKEEPER' | |
watts_endpoint: | |
type: string | |
required: no | |
default: 'https://dodas-tts.cloud.cnaf.infn.it' | |
iam_endpoint: | |
type: string | |
required: no | |
default: 'https://dodas-iam.cloud.cnaf.infn.it/' | |
iam_credential_endpoint: | |
type: string | |
required: no | |
default: 'https://dodas-tts.cloud.cnaf.infn.it/api/v2/iam/credential' | |
audience: | |
type: string | |
required: no | |
default: 'https://dodas-tts.cloud.cnaf.infn.it' | |
proxycache_image: | |
type: string | |
required: no | |
default: "dodasts/ttscache" | |
hostname_ccb: | |
type: string | |
required: no | |
default: "vnode-1.localdomain" | |
hostname_schedd: | |
type: string | |
required: no | |
default: "vnode-2.localdomain" | |
artifacts: | |
htcondor_config_role: | |
file: indigo-dc.htcondor_config,v2.0.0-dodas-rc9 | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
start: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/mesos/htcondor_master_config.yml | |
inputs: | |
prepare_only: { get_property: [ SELF, prepare_only ] } | |
marathon_username: { get_property: [ SELF, marathon_username ] } | |
marathon_password: { get_property: [ SELF, marathon_password ] } | |
hostname_ccb: { get_property: [ SELF, hostname_ccb ] } | |
hostname_schedd: { get_property: [ SELF, hostname_schedd ] } | |
condor_host: { get_property: [ SELF, htcondor_config_condor_host ] } | |
zookeeper_peers: { get_property: [ SELF, master_ips ] } | |
zookeeper_host_list: { get_property: [ SELF, master_ips ] } | |
lb_peers: { get_property: [ SELF, lb_ips ] } | |
htcondor_config_schedd_ip_pub: { get_property: [ SELF, htcondor_config_schedd_ip_pub ] } | |
htcondor_config_schedd_ip: { get_property: [ SELF, htcondor_config_schedd_ip ] } | |
ccb_address: { get_property: [ SELF, htcondor_config_ccb_address ] } | |
high_port: { get_property: [ SELF, htcondor_config_high_port ] } | |
low_port: { get_property: [ SELF, htcondor_config_low_port ] } | |
config_mode: { get_property: [ SELF, config_mode ] } | |
htcondor_config_condor_image: { get_property: [ SELF, htcondor_config_condor_image ] } | |
htcondor_config_ccb_ip: { get_property: [ SELF, htcondor_config_ccb_ip ] } | |
proxycache_host: { get_property: [ SELF, proxycache_host ] } | |
proxy_cache_manager: { get_property: [ SELF, proxycache_token_manager ] } | |
proxy_tts: { get_property: [ SELF, watts_endpoint ] } | |
proxy_iam_endpoint: { get_property: [ SELF, iam_endpoint ] } | |
proxy_credential_endpoint: { get_property: [ SELF, iam_credential_endpoint ] } | |
proxy_audience: { get_property: [ SELF, audience ] } | |
config_proxycache_host: { get_property: [ SELF, proxycache_host ] } | |
config_iam_token: { get_property: [ SELF, iam_access_token ] } | |
config_iam_client_id: { get_property: [ SELF, iam_client_id ] } | |
config_iam_client_secret: { get_property: [ SELF, iam_client_secret ] } | |
config_proxycache_image: { get_property: [ SELF, proxycache_image ]} | |
requirements: | |
- host: | |
capability: tosca.capabilities.indigo.ClusterMaster | |
relationship: tosca.relationships.HostedOn | |
node: tosca.nodes.SoftwareComponent | |
tosca.nodes.DODAS.HelmInstall: | |
derived_from: tosca.nodes.SoftwareComponent | |
properties: | |
name: | |
type: string | |
description: name of the helm deployment | |
required: yes | |
chart: | |
type: string | |
description: chart name | |
required: yes | |
repos: | |
type: list | |
entry_schema: | |
type: map | |
entry_schema: | |
type: string | |
values_file: | |
type: string | |
description: values.yaml file content | |
required: no | |
default: "" | |
values_url: | |
type: string | |
description: values.yaml file url | |
required: no | |
default: "" | |
kubeconfig_path: | |
type: string | |
required: no | |
default: /etc/kubernetes/admin.conf | |
inline_options: | |
type: string | |
required: no | |
default: "" | |
helm_version: | |
type: string | |
required: no | |
default: "v2" | |
role_name: | |
type: string | |
required: no | |
default: dodas.helm | |
artifacts: | |
helm_config_role: | |
file: dodas.helm,v2.0.0-rc5 | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
start: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/dodas/ansible.yaml | |
inputs: | |
role_name: { get_property: [ SELF, role_name ] } | |
name: { get_property: [ SELF, name ] } | |
chart: { get_property: [ SELF, chart ] } | |
values_file: { get_property: [ SELF, values_file ] } | |
values_url: { get_property: [ SELF, values_url ] } | |
inline_options: { get_property: [ SELF, inline_options ] } | |
kubeconfig_path: { get_property: [ SELF, kubeconfig_path ] } | |
helm_version: { get_property: [ SELF, helm_version ] } | |
repos: { get_property: [ SELF, repos ] } | |
tosca.nodes.DODAS.KubeCreate: | |
derived_from: tosca.nodes.SoftwareComponent | |
properties: | |
name: | |
type: string | |
description: name of the helm deployment | |
required: no | |
default: "" | |
namespace: | |
type: string | |
required: no | |
default: default | |
url: | |
type: string | |
required: no | |
default: "" | |
manifest_file: | |
type: string | |
required: no | |
default: "" | |
inline_options: | |
type: string | |
required: no | |
default: "" | |
externalParams: | |
type: list | |
required: no | |
entry_schema: | |
type: string | |
role_name: | |
type: string | |
required: no | |
default: dodas.kubecreate | |
artifacts: | |
kubecreate_config_role: | |
file: dodas.kubecreate,v2.0.0-rc4 | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
start: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/dodas/ansible.yaml | |
inputs: | |
role_name: { get_property: [ SELF, role_name ] } | |
name: { get_property: [ SELF, name ] } | |
namespace: { get_property: [ SELF, namespace ] } | |
url: { get_property: [ SELF, url ] } | |
inline_options: { get_property: [ SELF, inline_options ] } | |
manifest_file: { get_property: [ SELF, manifest_file ] } | |
externalParams: { get_property: [ SELF, externalParams ] } | |
tosca.nodes.DODAS.KubeCreate.Grafana: | |
derived_from: tosca.nodes.DODAS.KubeCreate | |
properties: | |
admin_pwd: | |
type: string | |
description: admin password for Grafana | |
required: no | |
default: "testme" | |
interfaces: | |
Standard: | |
start: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/dodas/ansible.yaml | |
inputs: | |
role_name: { get_property: [ SELF, role_name ] } | |
name: { get_property: [ SELF, name ] } | |
namespace: { get_property: [ SELF, namespace ] } | |
url: { get_property: [ SELF, url ] } | |
inline_options: { get_property: [ SELF, inline_options ] } | |
manifest_file: { get_property: [ SELF, manifest_file ] } | |
externalParams: { get_property: [ SELF, externalParams ] } | |
admin_pwd: { get_property: [ SELF, admin_pwd ] } | |
# ORCHESTRATORS | |
############################################################ | |
# - tosca.nodes.DODAS.k3s | |
# - tosca.nodes.DODAS.WorkerNode.Kubernetes | |
# - tosca.nodes.DODAS.FrontEnd.Kubernetes | |
tosca.nodes.DODAS.k3s: | |
derived_from: tosca.nodes.SoftwareComponent | |
properties: | |
master_ip: | |
type: string | |
required: yes | |
mode: | |
type: string | |
required: yes | |
k3s_version: | |
type: string | |
required: no | |
default: v1.17.0+k3s.1 | |
node_label: | |
type: string | |
required: no | |
default: unlabelled=true | |
role_name: | |
type: string | |
required: no | |
default: dodas.k3s | |
artifacts: | |
k3s_config_role: | |
file: dodas.k3s,v2.0.0-rc2 | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
start: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/dodas/ansible.yaml | |
inputs: | |
master_ip: { get_property: [ SELF, master_ip ] } | |
mode: { get_property: [ SELF, mode ] } | |
node_label: { get_property: [ SELF, node_label ] } | |
role_name: { get_property: [ SELF, role_name ] } | |
k3s_version: { get_property: [ SELF, k3s_version ] } | |
tosca.nodes.DODAS.WorkerNode.Kubernetes: | |
derived_from: tosca.nodes.indigo.LRMS.WorkerNode | |
metadata: | |
icon: /images/kubernetesWN.png | |
properties: | |
admin_username: | |
required: no | |
type: string | |
default: kubeuser | |
admin_token: | |
required: no | |
type: string | |
default: some_insecure_token | |
kubelet_extra_args: | |
required: no | |
type: string | |
default: "" | |
kube_version: | |
required: no | |
type: string | |
default: 1.17.0 | |
nodelabel: | |
type: string | |
required: no | |
default: "testme=true" | |
artifacts: | |
docker_role: | |
file: indigo-dc.docker,2.1.2-beta | |
type: tosca.artifacts.AnsibleGalaxy.role | |
kube_role: | |
file: dodas.kubernetes,v2.1.0-ingress-pre5 | |
type: tosca.artifacts.AnsibleGalaxy.role | |
nfs_role: | |
file: indigo-dc.nfs | |
type: tosca.artifacts.AnsibleGalaxy.role | |
openvpn_role: | |
file: indigo-dc.openvpn | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/dodas/kube_wn_install.yaml | |
inputs: | |
kube_front_end_ip: { get_property: [ SELF, front_end_ip ] } | |
wn_hybrid_cluster: { get_property: [ SELF, hybrid] } | |
kubelet_extra_args: { get_property: [ SELF, kubelet_extra_args] } | |
kube_version: { get_property: [ SELF, kube_version] } | |
kube_admin_username: { get_property: [ SELF, admin_username] } | |
kube_admin_token: { get_property: [ SELF, admin_token] } | |
nodelabel: { get_property: [ SELF, nodelabel] } | |
tosca.nodes.DODAS.FrontEnd.Kubernetes: | |
derived_from: tosca.nodes.indigo.LRMS.FrontEnd | |
metadata: | |
icon: /images/kubernetesFE.png | |
properties: | |
admin_username: | |
required: no | |
type: string | |
default: kubeuser | |
admin_token: | |
required: no | |
type: string | |
default: some_insecure_token | |
kube_version: | |
required: no | |
type: string | |
default: 1.17.0 | |
kube_deploy_dashboard: | |
required: no | |
type: string | |
default: k8s | |
artifacts: | |
docker_role: | |
file: indigo-dc.docker,2.1.2-beta | |
type: tosca.artifacts.AnsibleGalaxy.role | |
kube_role: | |
file: dodas.kubernetes,v2.1.0-ingress-pre5 | |
type: tosca.artifacts.AnsibleGalaxy.role | |
nfs_role: | |
file: indigo-dc.nfs | |
type: tosca.artifacts.AnsibleGalaxy.role | |
openvpn_role: | |
file: indigo-dc.openvpn | |
type: tosca.artifacts.AnsibleGalaxy.role | |
capabilities: | |
lrms: | |
type: tosca.capabilities.indigo.LRMS.Kubernetes | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/dodas/kube_fe_install.yaml | |
inputs: | |
kube_front_end_ip: { get_attribute: [ HOST, private_address, 0 ] } | |
kube_api_server_public: { get_attribute: [ HOST, public_address, 0 ] } | |
fe_hybrid_cluster: { get_property: [ SELF, hybrid] } | |
kube_admin_username: { get_property: [ SELF, admin_username] } | |
kube_admin_token: { get_property: [ SELF, admin_token] } | |
kube_version: { get_property: [ SELF, kube_version] } | |
kube_deploy_dashboard: { get_property: [ SELF, kube_deploy_dashboard ] } | |
#TO IMPROVE with DIEGO | |
tosca.nodes.indigo.NfsClient: | |
derived_from: tosca.nodes.SoftwareComponent | |
properties: | |
remote_path: | |
type: string | |
required: yes | |
local_path: | |
type: string | |
required: yes | |
server_host: | |
type: string | |
required: yes | |
artifacts: | |
nfs_role: | |
file: indigo-dc.nfs | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
start: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/dodas/nfs_client.yml | |
inputs: | |
remote_path: { get_property: [ SELF, remote_path ] } | |
local_path: { get_property: [ SELF, local_path ] } | |
server_host: { get_property: [ SELF, server_host ] } | |
# TO REMOVE. TEMP WORKAROUND TO AVOID PaaS Orchestrator parser issue | |
tosca.nodes.DODAS.pip_manager_cygno: | |
derived_from: tosca.nodes.SoftwareComponent | |
properties: | |
pip_package: | |
type: string | |
required: no | |
default: python3-pip | |
role_name: | |
type: string | |
required: no | |
default: dodas.pip_manager_cygno | |
artifacts: | |
pip_manager_cygno_config_role: | |
file: dodas.pip_manager_cygno | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
start: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/dodas/ansible.yaml | |
inputs: | |
role_name: { get_property: [ SELF, role_name ] } | |
pip_package: { get_property: [ SELF, pip_package ] } | |
tosca.nodes.DODAS.pip_manager: | |
derived_from: tosca.nodes.SoftwareComponent | |
properties: | |
pip_package: | |
type: string | |
required: no | |
default: python3-pip | |
packages: | |
type: list | |
required: no | |
entry_schema: | |
type: map | |
entry_schema: | |
type: string | |
default: [] | |
role_name: | |
type: string | |
required: no | |
default: dodas.pip_manager | |
artifacts: | |
pip_manager_config_role: | |
file: dodas.pip_manager | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
start: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/dodas/ansible.yaml | |
inputs: | |
role_name: { get_property: [ SELF, role_name ] } | |
pip_package: { get_property: [ SELF, pip_package ] } | |
packages: { get_property: [ SELF, packages ] } | |
tosca.nodes.DODAS.ml_infn: | |
derived_from: tosca.nodes.SoftwareComponent | |
properties: | |
ml_user: | |
type: string | |
required: no | |
default: cloudadm | |
jupyter_port: | |
type: string | |
required: no | |
default: 8888 | |
jupyter_token: | |
type: string | |
required: yes | |
default: testme | |
ml_test_url: | |
type: string | |
required: no | |
default: "" | |
cvmfs_repositories: | |
type: list | |
required: no | |
entry_schema: | |
type: string | |
default: [cms.cern.ch] | |
role_name: | |
type: string | |
required: no | |
default: dodas.ml_infn | |
artifacts: | |
ml_infn_config_role: | |
file: dodas.ml_infn | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
start: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/dodas/ansible.yaml | |
inputs: | |
role_name: { get_property: [ SELF, role_name ] } | |
ml_user: { get_property: [ SELF, ml_user ] } | |
jupyter_port: { get_property: [ SELF, jupyter_port ] } | |
jupyter_token: { get_property: [ SELF, jupyter_token ] } | |
cvmfs_repositories: { get_property: [ SELF, cvmfs_repositories ] } | |
tosca.nodes.DODAS.cygno: | |
derived_from: tosca.nodes.SoftwareComponent | |
properties: | |
cygno_user: | |
type: string | |
required: no | |
default: cloudadm | |
jupyter_port: | |
type: string | |
required: no | |
default: 8888 | |
jupyter_token: | |
type: string | |
required: yes | |
default: testme | |
role_name: | |
type: string | |
required: no | |
default: dodas.cygno | |
artifacts: | |
cygno_config_role: | |
file: dodas.cygno | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
start: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/dodas/ansible.yaml | |
inputs: | |
role_name: { get_property: [ SELF, role_name ] } | |
cygno_user: { get_property: [ SELF, cygno_user ] } | |
jupyter_port: { get_property: [ SELF, jupyter_port ] } | |
jupyter_token: { get_property: [ SELF, jupyter_token ] } | |
tosca.nodes.DODAS.root_cern: | |
derived_from: tosca.nodes.SoftwareComponent | |
properties: | |
centos_url: | |
type: string | |
required: no | |
default: https://root.cern/download/root_v6.20.04.Linux-centos7-x86_64-gcc4.8.tar.gz | |
role_name: | |
type: string | |
required: no | |
default: dodas.root_cern | |
artifacts: | |
root_cern_config_role: | |
file: dodas.root_cern | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
start: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/dodas/ansible.yaml | |
inputs: | |
role_name: { get_property: [ SELF, role_name ] } | |
centos_url: { get_property: [ SELF, centos_url ] } | |
tosca.nodes.DODAS.JupyterVM: | |
derived_from: tosca.nodes.SoftwareComponent | |
properties: | |
vm_user: | |
type: string | |
required: no | |
default: cloudadm | |
jupyter_port: | |
type: string | |
required: no | |
default: 8888 | |
jupyter_token: | |
type: string | |
required: no | |
default: testme | |
persistence: | |
type: string | |
description: "Choose between mount method: 's3-goofys' (suggested) and 's3-contents'" | |
required: no | |
default: "" | |
s3_access_id: | |
type: string | |
required: no | |
default: "" | |
s3_access_key: | |
type: string | |
required: no | |
default: "" | |
s3_bucket: | |
type: string | |
required: no | |
default: "" | |
s3_endpoint: | |
type: string | |
required: no | |
default: "" | |
s3_mount_prefix: | |
type: string | |
required: no | |
default: "" | |
role_name: | |
type: string | |
required: no | |
default: dodas.jupytervm | |
artifacts: | |
jupytervm_config_role: | |
file: dodas.jupytervm | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
start: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/dodas/ansible.yaml | |
inputs: | |
role_name: { get_property: [ SELF, role_name ] } | |
vm_user: { get_property: [ SELF, vm_user ] } | |
jupyter_port: { get_property: [ SELF, jupyter_port ] } | |
jupyter_token: { get_property: [ SELF, jupyter_token ] } | |
persistence: { get_property: [ SELF, persistence ] } | |
s3_access_id: { get_property: [ SELF, s3_access_id ] } | |
s3_access_key: { get_property: [ SELF, s3_access_key ] } | |
s3_bucket: { get_property: [ SELF, s3_bucket ] } | |
s3_endpoint: { get_property: [ SELF, s3_endpoint ] } | |
s3_mount_prefix: { get_property: [ SELF, s3_mount_prefix ] } | |
tosca.nodes.DODAS.HelmInstall.HTCondor: | |
derived_from: tosca.nodes.DODAS.HelmInstall | |
properties: | |
condor_host: | |
type: string | |
required: no | |
default: "DUMMY" | |
ccb_address: | |
type: string | |
required: no | |
default: "DUMMY" | |
schedd_netinterface: | |
type: string | |
required: no | |
default: "DUMMY" | |
k8s_master_ip: | |
type: string | |
required: yes | |
iam_token: | |
type: string | |
required: yes | |
htcondor_docker_image: | |
type: string | |
required: yes | |
nfs_master_ip: | |
type: string | |
required: no | |
default: "" | |
nfs_path: | |
type: string | |
required: no | |
default: "" | |
interfaces: | |
Standard: | |
start: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/dodas/ansible.yaml | |
inputs: | |
role_name: { get_property: [ SELF, role_name ] } | |
name: { get_property: [ SELF, name ] } | |
chart: { get_property: [ SELF, chart ] } | |
values_file: { get_property: [ SELF, values_file ] } | |
values_url: { get_property: [ SELF, values_url ] } | |
inline_options: { get_property: [ SELF, inline_options ] } | |
kubeconfig_path: { get_property: [ SELF, kubeconfig_path ] } | |
repos: { get_property: [ SELF, repos ] } | |
condor_host: { get_property: [ SELF, condor_host ] } | |
ccb_address: { get_property: [ SELF, ccb_address ] } | |
schedd_netinterface: { get_property: [ SELF, schedd_netinterface ] } | |
iam_token: { get_property: [ SELF, iam_token ] } | |
htcondor_docker_image: { get_property: [ SELF, htcondor_docker_image ] } | |
k8s_master_ip: { get_property: [ SELF, k8s_master_ip ] } | |
nfs_master_ip: { get_property: [ SELF, nfs_master_ip ] } | |
nfs_path: { get_property: [ SELF, nfs_path ] } | |
helm_version: { get_property: [ SELF, helm_version ] } | |
tosca.nodes.DODAS.HelmInstall.Spark: | |
derived_from: tosca.nodes.DODAS.HelmInstall | |
properties: | |
externalIp: | |
type: string | |
required: no | |
default: "" | |
jupyter_token: | |
type: string | |
required: no | |
default: testme | |
s3_bucket: | |
type: string | |
required: no | |
default: "" | |
s3_endpoint: | |
type: string | |
required: no | |
default: "" | |
interfaces: | |
Standard: | |
start: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/dodas/ansible.yaml | |
inputs: | |
role_name: { get_property: [ SELF, role_name ] } | |
name: { get_property: [ SELF, name ] } | |
chart: { get_property: [ SELF, chart ] } | |
values_file: { get_property: [ SELF, values_file ] } | |
values_url: { get_property: [ SELF, values_url ] } | |
inline_options: { get_property: [ SELF, inline_options ] } | |
kubeconfig_path: { get_property: [ SELF, kubeconfig_path ] } | |
repos: { get_property: [ SELF, repos ] } | |
externalIp: { get_property: [ SELF, externalIp ] } | |
jupyter_token: { get_property: [ SELF, jupyter_token ] } | |
s3_bucket: { get_property: [ SELF, s3_bucket ] } | |
s3_endpoint: { get_property: [ SELF, s3_endpoint ] } | |
helm_version: { get_property: [ SELF, helm_version ] } | |
tosca.nodes.indigo.LRMS.WorkerNode.Mesos: | |
derived_from: tosca.nodes.indigo.LRMS.WorkerNode | |
metadata: | |
icon: /images/mesos.png | |
capabilities: | |
host: | |
type: tosca.capabilities.indigo.MesosSlave | |
properties: | |
# Set the current data of the mesos server | |
# but it can also specified in the TOSCA document | |
master_ips: | |
required: yes | |
type: list | |
entry_schema: | |
type: string | |
enable_nfs_share: | |
type: boolean | |
required: no | |
default: false | |
enable_consul_sd: | |
type: boolean | |
required: no | |
default: true | |
enable_gpu_support: | |
type: boolean | |
required: no | |
default: false | |
artifacts: | |
docker_agent_role: | |
file: indigo-dc.docker,2.1.2-beta | |
#file: git+https://github.com/indigo-dc/ansible-role-docker.git,fix/issue_13 | |
type: tosca.artifacts.AnsibleGalaxy.role | |
consul_agent_role: | |
file: indigo-dc.consul,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
mesos_agent_role: | |
file: indigo-dc.mesos,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
nfs_role: | |
file: indigo-dc.nfs,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
openvpn_role: | |
file: indigo-dc.indigovr,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
create: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/mesos/mesos_slave_install.yml | |
inputs: | |
mesos_masters_list_ips: { get_property: [ SELF, master_ips ] } | |
enable_nfs_share: { get_property: [ SELF, enable_nfs_share ] } | |
enable_consul_sd: { get_property: [ SELF, enable_consul_sd ] } | |
mesos_enable_gpu_support: { get_property: [ SELF, enable_gpu_support ] } | |
front_end_ip: { get_property: [ SELF, front_end_ip ] } | |
public_front_end_ip: { get_property: [ SELF, public_front_end_ip ] } | |
wn_hybrid_cluster: { get_property: [ SELF, hybrid] } | |
tosca.nodes.indigo.MesosSlave: | |
derived_from: tosca.nodes.indigo.LRMS.WorkerNode.Mesos | |
tosca.nodes.indigo.CmsOneclient: | |
derived_from: tosca.nodes.SoftwareComponent | |
properties: | |
oneclient_pkg: | |
type: string | |
required: yes | |
artifacts: | |
oneclient_role: | |
file: indigo-dc.oneclient,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/onedata/cms_oneclient.yml | |
inputs: | |
oneclient_pkg: { get_property: [ SELF, oneclient_pkg ] } | |
tosca.nodes.indigo.CmsWnConfig: | |
derived_from: tosca.nodes.SoftwareComponent | |
metadata: | |
icon: /images/cms.png | |
properties: | |
cms_local_site: | |
type: string | |
required: yes | |
cms_stageoutsite: | |
type: string | |
required: yes | |
cms_stageoutprotocol: | |
type: string | |
required: yes | |
cms_phedexnode: | |
type: string | |
required: yes | |
cms_stageoutcommand: | |
type: string | |
required: yes | |
cms_fallback_phedexnode: | |
type: string | |
required: no | |
default: 'T2_IT_myt2' | |
cms_fallback_lfn_prefix: | |
type: string | |
required: no | |
default: 'srm://t2-srm-02.lnl.infn.it:8443/srm/managerv2?SFN=xxxxxxx' | |
cms_fallback_command: | |
type: string | |
required: no | |
default: 'gfal2' | |
cms_input_path: | |
type: string | |
required: no | |
default: 'my/oneclient/path' | |
cms_input_protocol: | |
type: string | |
required: no | |
default: 'xrootd' | |
mysquid_host: | |
type: string | |
required: yes | |
proxycache_host: | |
type: string | |
required: yes | |
monitordb_ip: | |
type: string | |
required: no | |
elasticsearch_secret: | |
type: string | |
required: no | |
artifacts: | |
cms_config_role: | |
file: indigo-dc.cms_config,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/mesos/cms_wn_configure.yml | |
inputs: | |
cms_config_mysquid_host: { get_property: [ SELF, mysquid_host ] } | |
cms_config_proxycache_host: { get_property: [ SELF, proxycache_host ] } | |
cms_config_cms_local_site: { get_property: [ SELF, cms_local_site ] } | |
cms_config_stageoutsite: { get_property: [ SELF, cms_stageoutsite ] } | |
cms_config_stageoutprotocol: { get_property: [ SELF, cms_stageoutprotocol ] } | |
cms_config_stageoutcommand: { get_property: [ SELF, cms_stageoutcommand ] } | |
cms_config_phedexnode: { get_property: [ SELF, cms_phedexnode ] } | |
cms_config_fallback_phedexnode: { get_property: [ SELF,cms_fallback_phedexnode ] } | |
cms_config_fallback_lfn_prefix: { get_property: [ SELF,cms_fallback_lfn_prefix ] } | |
cms_config_fallback_command: { get_property: [ SELF,cms_fallback_command ] } | |
cms_input_path: { get_property: [ SELF, cms_input_path ] } | |
cms_input_protocol: { get_property: [ SELF, cms_input_protocol ] } | |
cms_config_elastic_secret: { get_property: [ SELF, elasticsearch_secret ] } | |
monitordb_ip: { get_property: [ SELF, monitordb_ip ] } | |
requirements: | |
- host: | |
capability: tosca.capabilities.indigo.MesosSlave | |
relationship: tosca.relationships.HostedOn | |
node: tosca.nodes.SoftwareComponent | |
occurrences: [1, 1] | |
tosca.nodes.indigo.MesosLoadBalancer: | |
derived_from: tosca.nodes.SoftwareComponent | |
metadata: | |
icon: /images/mesos.png | |
properties: | |
master_ips: | |
required: yes | |
type: list | |
entry_schema: | |
type: string | |
marathon_username: | |
type: string | |
required: no | |
default: admin | |
marathon_password: | |
type: string | |
required: yes | |
enable_consul_sd: | |
type: boolean | |
required: false | |
default: true | |
hybrid: | |
type: boolean | |
description: Flag to specify that this ElasticCluster will work in a hybrid environment | |
default: false | |
required: false | |
artifacts: | |
docker_agent_role: | |
file: indigo-dc.docker,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
consul_agent_role: | |
file: indigo-dc.consul,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
marathon_lb_role: | |
file: indigo-dc.marathon-lb,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
openvpn_role: | |
file: indigo-dc.indigovr,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
create: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/mesos/mesos_lb_install.yml | |
inputs: | |
enable_consul_sd: { get_property: [ SELF, enable_consul_sd ] } | |
master_ips: { get_property: [ SELF, master_ips ] } | |
marathon_username: { get_property: [ SELF, marathon_username ] } | |
marathon_password: { get_property: [ SELF, marathon_password ] } | |
lb_hybrid_cluster: { get_property: [ SELF, hybrid ] } | |
requirements: | |
- host: | |
capability: tosca.capabilities.Container | |
node: tosca.nodes.indigo.Compute | |
relationship: tosca.relationships.HostedOn | |
tosca.nodes.indigo.SparkMesos: | |
derived_from: tosca.nodes.SoftwareComponent | |
metadata: | |
icon: /images/spark-mesos.png | |
properties: | |
marathon_password: | |
type: string | |
required: true | |
zookeeper_peers: | |
type: string | |
required: true | |
spark_mesos_deploy_app: | |
type: string | |
constraints: | |
- valid_values: [ apache-zeppelin, spark-dispatcher ] | |
required: false | |
spark_hdfs_uri: | |
type: string | |
required: false | |
default: '' | |
spark_swift_auth_url: | |
type: string | |
required: false | |
default: '' | |
spark_swift_http_port: | |
type: string | |
required: false | |
default: '8080' | |
spark_swift_region: | |
type: string | |
required: false | |
default: '' | |
spark_swift_tenant: | |
type: string | |
required: false | |
default: '' | |
spark_swift_username: | |
type: string | |
required: false | |
default: '' | |
spark_swift_password: | |
type: string | |
required: false | |
default: '' | |
spark_swift_provider: | |
type: string | |
required: false | |
default: 'Test' | |
spark_cores_max: | |
type: integer | |
required: false | |
default: '-1' | |
spark_executor_cores: | |
type: integer | |
required: false | |
default: '-1' | |
spark_executor_mem: | |
type: scalar-unit.size | |
required: false | |
default: '0 GB' | |
spark_driver_mem: | |
type: scalar-unit.size | |
required: false | |
default: '0 GB' | |
spark_driver_cores: | |
type: integer | |
required: false | |
default: '-1' | |
artifacts: | |
spark_mesos_role: | |
file: indigo-dc.spark-mesos,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
create: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/mesos/spark_mesos_setup.yml | |
inputs: | |
marathon_password: { get_property: [ SELF, marathon_password ] } | |
zookeeper_peers: { get_property: [ SELF, zookeeper_peers ] } | |
spark_mesos_deploy_app: { get_property: [ SELF, spark_mesos_deploy_app ] } | |
spark_hdfs_uri: { get_property: [ SELF, spark_hdfs_uri ] } | |
spark_swift_auth_url: { get_property: [ SELF, spark_swift_auth_url ] } | |
spark_mesos_swift_http_port: { get_property: [ SELF, spark_swift_http_port ] } | |
spark_mesos_swift_region: { get_property: [ SELF, spark_swift_region ] } | |
spark_mesos_swift_tenant: { get_property: [ SELF, spark_swift_tenant ] } | |
spark_mesos_swift_username: { get_property: [ SELF, spark_swift_username ] } | |
spark_mesos_swift_password: { get_property: [ SELF, spark_swift_password ] } | |
spark_mesos_swift_provider: { get_property: [ SELF, spark_swift_provider ] } | |
spark_mesos_cores_max: { get_property: [ SELF, spark_cores_max ] } | |
spark_mesos_executor_cores: { get_property: [ SELF, spark_executor_cores ] } | |
spark_mesos_executor_mem: { get_property: [ SELF, spark_executor_mem ] } | |
spark_mesos_driver_mem: { get_property: [ SELF, spark_driver_mem ] } | |
spark_mesos_driver_cores: { get_property: [ SELF, spark_driver_cores ] } | |
requirements: | |
- host: | |
capability: tosca.capabilities.indigo.MesosMaster | |
relationship: tosca.relationships.HostedOn | |
node: tosca.nodes.SoftwareComponent | |
occurrences: [1, 1] | |
tosca.nodes.indigo.OneDataStorage: | |
derived_from: tosca.nodes.BlockStorage | |
metadata: | |
icon: /images/onedata.png | |
properties: | |
size: | |
# to overwrite BlockStorage size property to set it as not required | |
type: scalar-unit.size | |
required: false | |
oneprovider_host: | |
type: list | |
entry_schema: | |
type: string | |
required: false | |
onezone_endpoint: | |
type: string | |
required: false | |
dataspace: | |
type: list | |
entry_schema: | |
type: string | |
required: false | |
credential: | |
type: tosca.datatypes.Credential | |
required: true | |
tosca.nodes.indigo.HadoopMaster: | |
derived_from: tosca.nodes.SoftwareComponent | |
metadata: | |
icon: /images/hadoop-master.jpg | |
artifacts: | |
hadoop_role: | |
file: indigo-dc.hadoop,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/hadoop/hadoop_master_install.yml | |
inputs: | |
hadoop_master_ip: { get_attribute: [ HOST, private_address, 0 ] } | |
tosca.nodes.indigo.HadoopSlave: | |
derived_from: tosca.nodes.SoftwareComponent | |
metadata: | |
icon: /images/hadoop-wn.jpg | |
properties: | |
master_ip: | |
required: yes | |
type: string | |
artifacts: | |
hadoop_role: | |
file: indigo-dc.hadoop,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/hadoop/hadoop_wn_install.yml | |
inputs: | |
hadoop_master_ip: { get_property: [ SELF, master_ip ] } | |
tosca.nodes.indigo.HaddockApp: | |
derived_from: tosca.nodes.SoftwareComponent | |
metadata: | |
icon: /images/Haddock.png | |
properties: | |
haddock_app_name: | |
type: string | |
description: Haddocking application | |
required: true | |
constraints: | |
- valid_values: [ disvis, powerfit ] | |
artifacts: | |
galaxy_role: | |
file: indigo-dc.disvis-powerfit,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/haddock/haddock_install.yml | |
inputs: | |
haddock_app_name: { get_property: [ SELF, haddock_app_name ] } | |
tosca.nodes.indigo.Disvis: | |
derived_from: tosca.nodes.indigo.HaddockApp | |
metadata: | |
icon: /images/disvis.png | |
properties: | |
haddock_app_name: | |
type: string | |
required: true | |
default: disvis | |
constraints: | |
- equal: disvis | |
tosca.nodes.indigo.Powerfit: | |
derived_from: tosca.nodes.indigo.HaddockApp | |
metadata: | |
icon: /images/powerfit.png | |
properties: | |
haddock_app_name: | |
type: string | |
required: true | |
default: powerfit | |
constraints: | |
- equal: powerfit | |
tosca.nodes.indigo.Eubiosteo: | |
derived_from: tosca.nodes.SoftwareComponent | |
artifacts: | |
galaxy_role: | |
file: indigo-dc.eubiosteo,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/eubiosteo/eubiosteo_install.yml | |
tosca.nodes.indigo.Ambertools: | |
derived_from: tosca.nodes.SoftwareComponent | |
metadata: | |
icon: /images/amber.jpg | |
artifacts: | |
galaxy_role: | |
file: indigo-dc.ambertools,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/ambertools/ambertools_install.yml | |
tosca.nodes.indigo.Kepler: | |
derived_from: tosca.nodes.SoftwareComponent | |
metadata: | |
icon: /images/kepler.jpeg | |
artifacts: | |
galaxy_role: | |
file: indigo-dc.kepler,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/kepler/kepler_install.yml | |
tosca.nodes.indigo.OphidiaServer: | |
derived_from: tosca.nodes.SoftwareComponent | |
metadata: | |
icon: /images/ophidia-server.png | |
properties: | |
io_ips: | |
type: list | |
entry_schema: | |
type: string | |
description: List of IPs of the Ophidia IO nodes | |
required: false | |
default: [] | |
artifacts: | |
ophidia_role: | |
file: indigo-dc.ophidia-cluster,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
slurm_role: | |
file: indigo-dc.slurm,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
nfs_role: | |
file: indigo-dc.nfs,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/ophidia/ophidia_server_install.yml | |
inputs: | |
ophidia_io_ips: { get_property: [ SELF, io_ips ] } | |
tosca.nodes.indigo.OphidiaIO: | |
derived_from: tosca.nodes.SoftwareComponent | |
metadata: | |
icon: /images/ophidia-io.png | |
properties: | |
server_ip: | |
type: string | |
description: IP of the OphidiaServer node | |
required: true | |
artifacts: | |
ophidia_role: | |
file: indigo-dc.ophidia-cluster,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
slurm_role: | |
file: indigo-dc.slurm,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
nfs_role: | |
file: indigo-dc.nfs,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/ophidia/ophidia_io_install.yml | |
inputs: | |
ophidia_server_ip: { get_property: [ SELF, server_ip ] } | |
tosca.nodes.indigo.Batch.Job: | |
derived_from: tosca.nodes.Root | |
properties: | |
executable: | |
required: yes | |
type: string | |
description: Name of the executable file | |
arguments: | |
required: no | |
type: string | |
description: Arguments for the job executable | |
environment: | |
type: map | |
entry_schema: | |
type: string | |
description: A map of string representing environment settings | |
tosca.nodes.indigo.Qcg.Job: | |
derived_from: tosca.nodes.indigo.Batch.Job | |
properties: | |
directory: | |
required: no | |
type: string | |
description: Work directory for the Job | |
schema: | |
required: no | |
type: string | |
description: Job schema | |
note: | |
required: no | |
type: string | |
description: User's note for the Job | |
# https://wiki.italiangrid.it/twiki/bin/view/CREAM/JdlGuide | |
tosca.nodes.indigo.Grid.Job: | |
derived_from: tosca.nodes.indigo.Batch.Job | |
properties: | |
ce_urls: | |
required: yes | |
type: list | |
entry_schema: | |
type: string | |
description: A list of CREAM CE identifiers to launch the job | |
stdoutput: | |
required: no | |
description: Name of the file to get the standard output stream of the user application | |
type: string | |
stderror: | |
required: no | |
type: string | |
description: Name of the file to get the standard error stream of the user application | |
outputsandbox: | |
type: list | |
entry_schema: | |
type: string | |
description: A list of output sandbox files | |
inputsandbox: | |
type: list | |
entry_schema: | |
type: string | |
description: A list of input sandbox files (URL of files located in gridFTP servers) | |
virtualorganisation: | |
required: no | |
type: string | |
description: Specify the VO of the user | |
tosca.nodes.indigo.LRMS.WorkerNode.Kubernetes: | |
derived_from: tosca.nodes.indigo.LRMS.WorkerNode | |
properties: | |
kube_version: | |
required: no | |
type: string | |
default: 1.16.4 | |
kubelet_extra_args: | |
required: no | |
type: string | |
default: "" | |
node_name: | |
required: no | |
type: string | |
default: "AUTO" | |
kube_network: | |
required: no | |
type: string | |
default: flannel | |
artifacts: | |
kube_role: | |
file: dciangot.kubernetes,v2.0.0-dodas-rc15 | |
type: tosca.artifacts.AnsibleGalaxy.role | |
nfs_role: | |
file: indigo-dc.nfs | |
type: tosca.artifacts.AnsibleGalaxy.role | |
openvpn_role: | |
file: indigo-dc.openvpn | |
type: tosca.artifacts.AnsibleGalaxy.role | |
ntp_role: | |
file: grycap.ntp | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/k8s/artifacts/lrms/kubernetes/kube_wn_install.yml | |
inputs: | |
node_name: { get_property: [ SELF, node_name ] } | |
kube_version: { get_property: [ SELF, kube_version ] } | |
kubelet_extra_args: { get_property: [ SELF, kubelet_extra_args ] } | |
kube_front_end_ip: { get_property: [ SELF, front_end_ip ] } | |
wn_hybrid_cluster: { get_property: [ SELF, hybrid] } | |
kube_network: { get_property: [ SELF, kube_network] } | |
tosca.nodes.indigo.LRMS.FrontEnd.Kubernetes: | |
derived_from: tosca.nodes.indigo.LRMS.FrontEnd | |
properties: | |
admin_username: | |
required: no | |
type: string | |
default: kubeuser | |
admin_token: | |
required: no | |
type: string | |
value: some_insecure_token | |
kube_version: | |
required: no | |
type: string | |
default: 1.16.4 | |
kube_network: | |
required: no | |
type: string | |
default: flannel | |
artifacts: | |
kube_role: | |
file: dciangot.kubernetes,v2.0.0-dodas-rc15 | |
type: tosca.artifacts.AnsibleGalaxy.role | |
nfs_role: | |
file: indigo-dc.nfs | |
type: tosca.artifacts.AnsibleGalaxy.role | |
openvpn_role: | |
file: indigo-dc.openvpn | |
type: tosca.artifacts.AnsibleGalaxy.role | |
ntp_role: | |
file: grycap.ntp | |
type: tosca.artifacts.AnsibleGalaxy.role | |
capabilities: | |
lrms: | |
type: tosca.capabilities.indigo.LRMS.Kubernetes | |
host: | |
type: tosca.capabilities.indigo.KubernetesMaster | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/k8s/artifacts/lrms/kubernetes/kube_fe_install.yml | |
inputs: | |
kube_version: { get_property: [ SELF, kube_version ] } | |
kube_front_end_ip: { get_attribute: [ HOST, private_address, 0 ] } | |
fe_hybrid_cluster: { get_property: [ SELF, hybrid] } | |
kube_admin_username: { get_property: [ SELF, admin_username] } | |
kube_admin_token: { get_property: [ SELF, admin_token] } | |
kube_network: { get_property: [ SELF, kube_network] } | |
tosca.nodes.indigo.JupyterHub: | |
derived_from: tosca.nodes.SoftwareComponent | |
metadata: | |
icon: /images/jupyterhub.png | |
properties: | |
spawner: | |
required: no | |
type: string | |
default: local | |
constraints: | |
- valid_values: [ local, kubernetes ] | |
authenticator: | |
required: no | |
type: string | |
default: local | |
constraints: | |
- valid_values: [ local, dummy ] | |
artifacts: | |
kube_role: | |
file: indigo-dc.jupyterhub,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/jupyter/jupyterhub_install.yml | |
inputs: | |
jupyterhub_spawner: { get_property: [ SELF, spawner ] } | |
jupyterhub_authenticator: { get_property: [ SELF, spawner ] } | |
tosca.nodes.indigo.OnedataSpace: | |
derived_from: tosca.nodes.Root | |
attributes: | |
selected_provider: | |
type: string | |
properties: | |
token: | |
required: no | |
type: string | |
space: | |
required: yes | |
type: string | |
oneproviders: | |
required: no | |
type: list | |
entry_schema: | |
type: string | |
onezone: | |
required: no | |
type: string | |
smartScheduling: | |
type: boolean | |
required: false | |
default: false | |
tosca.nodes.indigo.OnedataServiceSpace: | |
derived_from: tosca.nodes.Root | |
attributes: | |
space: | |
type: string | |
path: | |
type: string | |
selected_provider: | |
type: string | |
token: | |
type: string | |
onezone: | |
type: string | |
properties: | |
smartScheduling: | |
type: boolean | |
required: false | |
default: false | |
tosca.nodes.indigo.Dynafed: | |
derived_from: tosca.nodes.Root | |
properties: | |
files: | |
required: yes | |
type: list | |
entry_schema: | |
type: string | |
tosca.nodes.indigo.BlockStorage: | |
derived_from: tosca.nodes.BlockStorage | |
properties: | |
type: | |
type: string | |
required: false | |
tosca.nodes.indigo.VR.CentralPoint: | |
derived_from: tosca.nodes.SoftwareComponent | |
artifacts: | |
indigovr_role: | |
file: indigo-dc.indigovr,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
capabilities: | |
central_point: | |
type: tosca.capabilities.Endpoint | |
valid_source_types: [tosca.nodes.indigo.VR.Client, tosca.nodes.indigo.VR.VRouter] | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/indigovr/central_point_install.yml | |
tosca.nodes.indigo.VR.Client: | |
derived_from: tosca.nodes.SoftwareComponent | |
artifacts: | |
indigovr_role: | |
file: indigo-dc.indigovr,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
requirements: | |
- central_point: | |
capability: tosca.capabilities.Endpoint | |
node: tosca.nodes.indigo.VR.CentralPoint | |
relationship: tosca.relationships.DependsOn | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/indigovr/standalone_install.yml | |
inputs: | |
INDIGOVR_CENTRALPOINT_IP: { get_attribute: [ SELF, central_point, ip_address ] } | |
tosca.nodes.indigo.VR.VRouter: | |
derived_from: tosca.nodes.SoftwareComponent | |
artifacts: | |
indigovr_role: | |
file: indigo-dc.indigovr,master | |
type: tosca.artifacts.AnsibleGalaxy.role | |
requirements: | |
- central_point: | |
capability: tosca.capabilities.Endpoint | |
node: tosca.nodes.indigo.VR.CentralPoint | |
relationship: tosca.relationships.DependsOn | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/indigovr/vrouter_install.yml | |
inputs: | |
INDIGOVR_CENTRALPOINT_IP: { get_attribute: [ SELF, central_point, ip_address ] } | |
tosca.nodes.indigo.DEEPaaScont: | |
derived_from: tosca.nodes.SoftwareComponent | |
metadata: | |
icon: /images/deep.png | |
properties: | |
dockerhub_img: | |
type: string | |
description: docker image from Docker Hub to deploy | |
required: yes | |
rclone_conf: | |
type: string | |
description: rclone.conf location | |
required: no | |
default: "/srv/.rclone.conf" | |
rclone_url: | |
type: string | |
description: remote storage link to access via webdav | |
default: "" | |
required: no | |
rclone_vendor: | |
type: string | |
description: rclone vendor | |
required: no | |
default: "nextcloud" | |
rclone_user: | |
type: string | |
description: rclone user to access remote storage | |
required: no | |
default: "" | |
rclone_password: | |
type: string | |
description: rclone user password | |
required: no | |
default: "" | |
artifacts: | |
docker_role: | |
file: grycap.docker | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/deepaas/deepaas_cont.yml | |
inputs: | |
deepaas_dockerhub_img: { get_property: [ SELF, dockerhub_img ] } | |
deepaas_rclone_conf: { get_property: [ SELF, rclone_conf ] } | |
deepaas_rclone_type: webdav | |
deepaas_rclone_url: { get_property: [ SELF, rclone_url ] } | |
deepaas_rclone_vendor: { get_property: [ SELF, rclone_vendor ] } | |
deepaas_rclone_user: { get_property: [ SELF, rclone_user ] } | |
deepaas_rclone_pass: { get_property: [ SELF, rclone_password ] } | |
tosca.nodes.indigo.Elasticsearch: | |
derived_from: tosca.nodes.SoftwareComponent | |
properties: | |
es_version: | |
type: string | |
required: false | |
default: 7.9.3 | |
bind_address: | |
type: string | |
required: false | |
default: 0.0.0.0 | |
discovery_type: | |
type: string | |
required: false | |
default: single-node | |
enable_security: | |
type: boolean | |
default: true | |
required: false | |
elastic_password: | |
type: string | |
required: false | |
default: changeme | |
kibana_system_password: | |
type: string | |
required: false | |
default: changeme | |
artifacts: | |
es_role: | |
file: elastic.elasticsearch,7.9.3 | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/elk/elasticsearch_install.yml | |
inputs: | |
es_version: { get_property: [ SELF, es_version ] } | |
bind_host: { get_property: [ SELF, bind_address ] } | |
discovery_type: { get_property: [ SELF, discovery_type ] } | |
enable_security: { get_property: [ SELF, enable_security ] } | |
elastic_password: { get_property: [ SELF, elastic_password ] } | |
kibana_system_password: { get_property: [ SELF, kibana_system_password ] } | |
tosca.nodes.indigo.Kibana: | |
derived_from: tosca.nodes.SoftwareComponent | |
properties: | |
kibana_version: | |
type: string | |
required: false | |
default: 7.4.1 | |
elasticsearch_url: | |
type: string | |
required: false | |
default: "http://localhost:9200" | |
elasticsearch_username: | |
type: string | |
required: false | |
default: kibana | |
elasticsearch_password: | |
type: string | |
required: false | |
default: changeme | |
artifacts: | |
es_role: | |
file: maricaantonacci.kibana,7.4.1 | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/elk/kibana_install.yml | |
inputs: | |
kibana_version: { get_property: [ SELF, kibana_version ] } | |
kibana_elasticsearch_url: { get_property: [ SELF, elasticsearch_url ] } | |
kibana_elasticsearch_username: { get_property: [ SELF, elasticsearch_username ] } | |
kibana_elasticsearch_password: { get_property: [ SELF, elasticsearch_password ] } | |
tosca.nodes.indigo.dockerRun: | |
derived_from: tosca.nodes.SoftwareComponent | |
properties: | |
role_name: | |
type: string | |
required: no | |
default: indigo-dc.ansible_role_docker_run | |
docker_appname: | |
type: string | |
required: no | |
default: ubuntu | |
docker_image: | |
type: string | |
required: no | |
default: ubuntu | |
docker_tag: | |
type: string | |
required: no | |
default: latest | |
docker_ports: | |
type: string | |
required: no | |
default: "80" | |
docker_command: | |
type: string | |
required: no | |
default: "" | |
environment_variables: | |
required: no | |
default: [] | |
type: list | |
entry_schema: | |
type: map | |
entry_schema: | |
type: string | |
artifacts: | |
helm_config_role: | |
file: indigo-dc.ansible_role_docker_run | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
start: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/dodas/ansible.yaml | |
inputs: | |
role_name: { get_property: [ SELF, role_name ] } | |
appname: { get_property: [ SELF, docker_appname ] } | |
image: { get_property: [ SELF, docker_image ] } | |
tag: { get_property: [ SELF, docker_tag ] } | |
ports: { get_property: [ SELF, docker_ports ] } | |
command: { get_property: [ SELF, docker_command ] } | |
environment_variables: { get_property: [ SELF, environment_variables ] } | |
tosca.nodes.indigo.DockerCompose: | |
derived_from: tosca.nodes.SoftwareComponent | |
properties: | |
docker_compose_version: | |
type: version | |
required: no | |
default: 1.24.1 | |
docker_compose_file_url: | |
type: string | |
required: yes | |
environment_variables: | |
required: no | |
default: [] | |
type: list | |
entry_schema: | |
type: map | |
entry_schema: | |
type: string | |
project_name: | |
type: string | |
required: yes | |
artifacts: | |
docker_role: | |
file: indigo-dc.docker | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/docker/docker-compose_configure.yml | |
inputs: | |
project_name: { get_property: [ SELF, project_name ] } | |
environment_variables: { get_property: [ SELF, environment_variables ] } | |
start: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/docker/docker-compose_start.yml | |
inputs: | |
docker_compose_version: { get_property: [ SELF, docker_compose_version ] } | |
docker_compose_file_url: { get_property: [ SELF, docker_compose_file_url ] } | |
project_name: { get_property: [ SELF, project_name ] } | |
tosca.nodes.indigo.S3Bucket: | |
derived_from: tosca.nodes.SoftwareComponent | |
properties: | |
bucket_name: | |
type: string | |
aws_access_key: | |
type: string | |
aws_secret_key: | |
type: string | |
s3_url: | |
type: string | |
interfaces: | |
Standard: | |
create: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/aws/s3_bucket.yml | |
inputs: | |
bucket_name: { get_property: [ SELF, bucket_name ] } | |
aws_access_key: { get_property: [ SELF, aws_access_key ]} | |
aws_secret_key: { get_property: [ SELF, aws_secret_key ]} | |
s3_url: { get_property: [ SELF, s3_url ]} | |
tosca.nodes.indigo.DockerCompose.CloudStorageService: | |
derived_from: tosca.nodes.indigo.DockerCompose | |
properties: | |
owncloud_hostname: | |
type: string | |
#default: { concat: [ "oc.", get_attribute: [ HOST, public_address, 0 ], ".myip.cloud.infn.it" ] } | |
nagios_hostname: | |
type: string | |
#default: { concat: [ "nagios.", get_attribute: [ HOST, public_address, 0 ], ".myip.cloud.infn.it" ] } | |
duplicati_hostname: | |
type: string | |
#default: { concat: [ "backup.", get_attribute: [ HOST, public_address, 0 ], ".myip.cloud.infn.it" ] } | |
traefik_version: | |
type: string | |
default: "'2.3'" | |
owncloud_version: | |
type: string | |
default: "'10'" | |
s3_bucket: | |
type: string | |
s3_access_key: | |
type: string | |
s3_secret_key: | |
type: string | |
s3_endpoint: | |
type: string | |
artifacts: | |
docker_role: | |
file: indigo-dc.docker | |
type: tosca.artifacts.AnsibleGalaxy.role | |
interfaces: | |
Standard: | |
configure: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/docker/cloudstorage/configure.yml | |
inputs: | |
project_name: { get_property: [ SELF, project_name ] } | |
owncloud_hostname: { get_property: [ SELF, owncloud_hostname ] } | |
nagios_hostname: { get_property: [ SELF, nagios_hostname ] } | |
duplicati_hostname: { get_property: [ SELF, duplicati_hostname ] } | |
traefik_version: { get_property: [ SELF, traefik_version ] } | |
owncloud_version: { get_property: [ SELF, owncloud_version ] } | |
s3_bucket: { get_property: [ SELF, s3_bucket ] } | |
s3_access_key: { get_property: [ SELF, s3_access_key ] } | |
s3_secret_key: { get_property: [ SELF, s3_secret_key ] } | |
s3_endpoint: { get_property: [ SELF, s3_endpoint ] } | |
environment_variables: { get_property: [ SELF, environment_variables ] } | |
start: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/docker/docker-compose_start.yml | |
inputs: | |
docker_compose_version: { get_property: [ SELF, docker_compose_version ] } | |
docker_compose_file_url: { get_property: [ SELF, docker_compose_file_url ] } | |
project_name: { get_property: [ SELF, project_name ] } | |
tosca.nodes.indigo.FSEncrypt: | |
derived_from: tosca.nodes.SoftwareComponent | |
properties: | |
passphrase: | |
type: string | |
required: yes | |
mountpoint: | |
type: string | |
required: no | |
default: /export | |
cipher: | |
type: string | |
required: no | |
default: aes-xts-plain64 | |
keysize: | |
type: integer | |
required: no | |
default: 256 # set key size [default: 256] | |
hash_algorithm: | |
type: string | |
required: no | |
default: 'sha256' # set hash algorithm used for key derivation | |
filesystem: | |
type: string | |
required: no | |
default: 'ext4' | |
device: | |
type: string | |
required: no | |
default: '/dev/vdb' | |
interfaces: | |
Standard: | |
start: | |
implementation: https://baltig.infn.it/infn-cloud/tosca-types/raw/master/artifacts/fsencryption/luks.yml | |
inputs: | |
passphrase: { get_property: [ SELF, passphrase ] } | |
mountpoint: { get_property: [ SELF, mountpoint ] } | |
cipher: { get_property: [ SELF, cipher ] } | |
keysize: { get_property: [ SELF, keysize ] } | |
hash_algorithm: { get_property: [ SELF, hash_algorithm ] } | |
filesystem: { get_property: [ SELF, filesystem ] } | |
device: { get_property: [ SELF, device ] } | |
policy_types: | |
tosca.policies.indigo.SlaPlacement: | |
derived_from: tosca.policies.Placement | |
properties: | |
sla_id: | |
required: true | |
type: string | |
tosca.policies.indigo.CredentialsAwareSlaPlacement: | |
derived_from: tosca.policies.indigo.SlaPlacement | |
properties: | |
username: | |
required: true | |
type: string | |
password: | |
required: true | |
type: string | |
subscription_id: | |
required: false | |
type: string |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment