Ejemplo n.º 1
0
    def _get_default_broker_values(self,
                                   url: URL,
                                   service_name: str = "") -> Dict[str, str]:
        """
        Return a set of default extra values that are non-user definable

        Currently there is only support for the user to set a single value when
        adding a service. This adds some default values in order for the application
        to be able to get every part of the database URL separately.

        Args:
            url: The URL of the database as a single string
            service_name: Prefixes for each value

        Returns:

        """
        return {
            get_project_secret_var(project_name=service_name,
                                   value="BROKER_URL"):
            str(url),
            get_project_secret_var(project_name=service_name,
                                   value="BROKER_HOST"):
            str(url.host),
            get_project_secret_var(project_name=service_name,
                                   value="BROKER_PORT"):
            str(url.port),
            get_project_secret_var(project_name=service_name,
                                   value="BROKER_USERNAME"):
            str(url.username),
            get_project_secret_var(project_name=service_name,
                                   value="BROKER_PASSWORD"):
            str(url.password),
        }
Ejemplo n.º 2
0
    def get_service_secret_artifact_name(self, service: "Service") -> str:
        if not self.artifact_name:
            raise ValueError(
                f"No artifact name set for the service {self.name}")

        return get_project_secret_var(project_name=service.name,
                                      value=self.artifact_name)
Ejemplo n.º 3
0
def test_get_project_secret_var(project_name: str, variable_name: str,
                                expected_value: str) -> None:
    assert get_project_secret_var(project_name,
                                  variable_name) == expected_value