def _common_template_metadata() -> Dict[str, Any]: metadata = {} # type: Dict[str, Any] repo_metadata = common._load_repo_metadata() if repo_metadata: metadata["repo"] = repo_metadata group_id, artifact_id = repo_metadata["distribution_name"].split(":") metadata["latest_version"] = latest_maven_version( group_id=group_id, artifact_id=artifact_id) metadata["latest_bom_version"] = latest_maven_version( group_id="com.google.cloud", artifact_id="libraries-bom", ) metadata["samples"] = samples.all_samples( ["samples/**/src/main/java/**/*.java"]) metadata["snippets"] = snippets.all_snippets( ["samples/**/src/main/java/**/*.java", "samples/**/pom.xml"]) if repo_metadata and "min_java_version" in repo_metadata: metadata["min_java_version"] = repo_metadata["min_java_version"] else: metadata["min_java_version"] = DEFAULT_MIN_SUPPORTED_JAVA_VERSION return metadata
def test_load_snippets(): cwd = os.getcwd() os.chdir(FIXTURES) all_snippets = snippets.all_snippets(["snippets/*.java", "snippets/*.xml"]) assert len(all_snippets) == 2 assert (all_snippets["monitoring_quickstart"] == """ public class MonitoringQuickstartSample { // do something } """) assert (all_snippets["monitoring_install_with_bom"] == """<dependencyManagement> <dependencies> <dependency> <groupId>com.google.cloud</groupId> <artifactId>libraries-bom</artifactId> <version>3.5.0</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <dependencies> <dependency> <groupId>com.google.cloud</groupId> <artifactId>google-cloud-monitoring</artifactId> </dependency> </dependencies> """) os.chdir(cwd)
def common_templates(excludes: List[str] = [], template_path: Optional[Path] = None, **kwargs) -> None: """Generate common templates for a Java Library Fetches information about the repository from the .repo-metadata.json file, information about the latest artifact versions and copies the files into their expected location. Args: excludes (List[str], optional): List of template paths to ignore **kwargs: Additional options for CommonTemplates.java_library() """ metadata = {} # type: Dict[str, Any] repo_metadata = common._load_repo_metadata() if repo_metadata: metadata["repo"] = repo_metadata group_id, artifact_id = repo_metadata["distribution_name"].split(":") metadata["latest_version"] = latest_maven_version( group_id=group_id, artifact_id=artifact_id) metadata["latest_bom_version"] = latest_maven_version( group_id="com.google.cloud", artifact_id="libraries-bom", ) metadata["samples"] = samples.all_samples( ["samples/**/src/main/java/**/*.java"]) metadata["snippets"] = snippets.all_snippets( ["samples/**/src/main/java/**/*.java", "samples/**/pom.xml"]) if repo_metadata and "min_java_version" in repo_metadata: metadata["min_java_version"] = repo_metadata["min_java_version"] else: metadata["min_java_version"] = DEFAULT_MIN_SUPPORTED_JAVA_VERSION kwargs["metadata"] = metadata templates = gcp.CommonTemplates(template_path=template_path).java_library( **kwargs) s.copy([templates], excludes=excludes, merge=_merge_common_templates)