{"id":15065584,"url":"https://github.com/apache/yetus","last_synced_at":"2025-04-13T12:40:18.295Z","repository":{"id":2330728,"uuid":"42705152","full_name":"apache/yetus","owner":"apache","description":"Apache Yetus","archived":false,"fork":false,"pushed_at":"2025-03-11T02:42:35.000Z","size":9042,"stargazers_count":69,"open_issues_count":3,"forks_count":59,"subscribers_count":13,"default_branch":"main","last_synced_at":"2025-04-06T09:01:31.657Z","etag":null,"topics":["bash","build-management","java","library","python","testing","yetus"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/apache.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-09-18T07:00:05.000Z","updated_at":"2025-03-04T15:20:57.000Z","dependencies_parsed_at":"2023-02-10T19:31:00.159Z","dependency_job_id":"f21aa8de-9d90-4b03-bd1e-391afdfd6bae","html_url":"https://github.com/apache/yetus","commit_stats":{"total_commits":1049,"total_committers":94,"mean_commits":"11.159574468085106","dds":0.4099142040038132,"last_synced_commit":"a2a0af531bf90c97bc113948f7745c0fa6f7fad2"},"previous_names":[],"tags_count":21,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fyetus","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fyetus/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fyetus/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fyetus/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/apache","download_url":"https://codeload.github.com/apache/yetus/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248520479,"owners_count":21117905,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bash","build-management","java","library","python","testing","yetus"],"created_at":"2024-09-25T00:42:19.679Z","updated_at":"2025-04-13T12:40:18.273Z","avatar_url":"https://github.com/apache.png","language":"Shell","readme":"\u003c!---\n  Licensed to the Apache Software Foundation (ASF) under one\n  or more contributor license agreements.  See the NOTICE file\n  distributed with this work for additional information\n  regarding copyright ownership.  The ASF licenses this file\n  to you under the Apache License, Version 2.0 (the\n  \"License\"); you may not use this file except in compliance\n  with the License.  You may obtain a copy of the License at\n\n    http://www.apache.org/licenses/LICENSE-2.0\n\n  Unless required by applicable law or agreed to in writing,\n  software distributed under the License is distributed on an\n  \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n  KIND, either express or implied.  See the License for the\n  specific language governing permissions and limitations\n  under the License.\n--\u003e\n\n# Apache Yetus\n\nApache Yetus is a collection of libraries and tools that enable\ncontribution and release process for software projects.\n\n## Components\n\nHere is a list of the major components:\n\n* [Website source](asf-site-src/)\nHolds our documentation, which is presented via [our website](https://yetus.apache.org/).\n\n* [Precommit](precommit/)\nPrecommit provides robust tools to deal with contributions, including applying patches from a variety of project sources and evaluating them against project norms via a system of plugins. See the [precommit overview](asf-site-src/source/documentation/in-progress/precommit-architecture.html.md) to get started working with precommit.\n\n* [Audience Annotations](audience-annotations-component/)\nAudience Annotations allows projects to use Java Annotations to delineate public and non-public parts of their APIs. It also provides doclets to generate javadocs filtered by the intended audience. Currently builds with Maven 3.2.0+.\n\n* [Shelldocs](shelldocs/)\nShelldocs processes comments on Bash functions for annotations similar to Javadoc. It also includes built-in audience scoping functionality similar to the doclet from Audience Annotations.\n\n* [Release Doc Maker](releasedocmaker/)\nRelease Doc Maker analyzes Jira and Git information to produce Markdown formatted release notes.\n\n* [yetus-maven-plugin](yetus-maven-plugin/)\nBuilds a maven plugin that provides some small utilities for some uncommon maven requirements (such as symlinks) in addition to being mavenized versions of some of the Apache Yetus functionality.\n\n## Building Quickstart\n\nFor full instructions on how to build releases and the website, see the [guide to contributing](asf-site-src/source/contribute.html.md) for requirements and instructions.\n\n```bash\n# Launch a Docker container that has all of the project's dependencies\n# and a working build environment\n./start-build-env.sh\n\n# Build the binary tarball, located in yetus-dist/target/artifacts:\nmvn clean install\n\n# Build the binary and source tarballs and sign the content:\nmvn clean install -Papache-release\n\n# Same, but if outside the container and need to let the system know\n# that the OS uses 'gpg2' instead of 'gpg':\nmvn clean install -Papache-release -Pgpg2\n\n# Build the binary and source tarballs, but skip signing them:\nmvn clean install -Papache-release -Dgpg.sign=skip\n\n# Build the website (requires a mvn install first)\nmvn site site:stage\n```\n\nAfter executing one or more of the Apache Maven commands, artifacts will be in `yetus-dist/target/artifacts` or ready for a `mvn deploy`.\n\n## Container Quickstart\n\nThe project makes available two convenience container images on \u003chttps://ghcr.io\u003e for both tagged releases and for the main branch.  It is highly recommended that casual users use a tagged release so as to not be surprised by incompatible changes that are still rolling through the main branch.\n\n### ghcr.io/apache/yetus-base\n\nThis image contains all of the tools that Apache Yetus supports. It is intended to be used when the Apache Yetus binaries are running outside of the container to speed up building the actual testing container.\n\n### ghcr.io/apache/yetus\n\nThis image contains all of ghcr.io/apache/yetus-base plus a built and installed version of Apache Yetus.  The binaries are in `/usr/bin` and therefore part of the default path.  This image is ideal for CI systems that take a container image as the operating environment or for interactive use.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapache%2Fyetus","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fapache%2Fyetus","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapache%2Fyetus/lists"}