예제 #1
0
    def encrypt(self, tenant=DEFAULT_TENANT, env=DEFAULT_ENV):
        """
        Encrypt your local tenant repository

        :type  tenant: string
        :param tenant: The name of the tenant.

        :type  env: string
        :param env: The name of the tenant.
        """
        print(utils.get_provision_color_string('encrypt', tenant, env))
        apansible.encrypt(tenant, env)
예제 #2
0
    def tags(self, tenant=DEFAULT_TENANT, env=DEFAULT_ENV):
        """
        Show available tags. This is handy to provision only a part of them
        or skipping some of them.

        :type  tenant: string
        :param tenant: The name of the tenant.

        :type  env: string
        :param env: The name of the tenant.
        """
        print(utils.get_provision_color_string('tags', tenant, env))
        apansible.list_tags(tenant, env)
예제 #3
0
    def provision(self,
                  tenant=DEFAULT_TENANT,
                  env=DEFAULT_ENV,
                  limit: str = None,
                  tags: str = None,
                  skip_tags: str = None,
                  firstrun: bool = False,
                  local: bool = False,
                  debug: bool = False):
        """
        Provision your machines.
        Syntax is:
        appflow provision "machine1,machine2" tag1,tag2 skiptag1,skiptag2
        tags: will run only the tags specified
        skip_tags: will run all the tags except for the specified ones
        limit: limit to only some specified hosts.

        Optionally it is possible to specify custom tenant and environment
        appflow provision tenant-name env-name...
        this is optional and by default will read the
        default config in ~/.appflow/config.yml

        :type  tenant: string
        :param tenant: The name of the tenant.

        :type  env: string
        :param env: The name of the tenant.

        :type  limit: string
        :param limit: Comma separated list of hosts to provision. (default None)

        :type  tags: string
        :param tags: Comma separated list of tags to exec (default All).

        :type  skip_tags: string
        :param skip_tags: Comma separated list of tags to skip (default None).

        :type  firstrun: bool
        :param firstrun: if it's first run (default False)

        :type  local: bool
        :param local: if it's doing a local auto-provision (default False)

        :type  debug: bool
        :param debug: if it's a debug run (default False)

        """
        print(utils.get_provision_color_string('provision', tenant, env))
        apansible.provision(tenant, env, limit, tags, skip_tags, firstrun,
                            local, debug)