{"id":19972436,"url":"https://github.com/note/oss-seed.g8","last_synced_at":"2025-03-01T18:22:23.029Z","repository":{"id":137967891,"uuid":"314904442","full_name":"note/oss-seed.g8","owner":"note","description":"Giter8 template for OSS projects with sonatype publish on Travis CI","archived":false,"fork":false,"pushed_at":"2020-11-30T21:39:59.000Z","size":41,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-01-12T09:27:11.786Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Scala","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/note.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":"2020-11-21T21:13:20.000Z","updated_at":"2020-11-30T21:40:01.000Z","dependencies_parsed_at":"2023-07-03T15:17:15.515Z","dependency_job_id":null,"html_url":"https://github.com/note/oss-seed.g8","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/note%2Foss-seed.g8","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/note%2Foss-seed.g8/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/note%2Foss-seed.g8/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/note%2Foss-seed.g8/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/note","download_url":"https://codeload.github.com/note/oss-seed.g8/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241405250,"owners_count":19957779,"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":[],"created_at":"2024-11-13T03:08:08.504Z","updated_at":"2025-03-01T18:22:23.017Z","avatar_url":"https://github.com/note.png","language":"Scala","funding_links":[],"categories":[],"sub_categories":[],"readme":"Giter8 template for OSS projects with sonatype publish on Travis CI.\n\n## How to use that template to generate a new project\n\nPrerequisites:\n\n  * `amm`\n  * `gpg2`\n  * `travis`\n\nSuch process is assumed:\n\n1. Create new Github repository. Just leave it empty for a moment, we will push the result of running the script at the end.\n2. Run `sbt new note/oss-seed.g8`\n3. Enter newly created directory.\n4. `git init \u0026\u0026 git remote add origin git@github.com:YOU/YOUR_PROJECT.git`\n  * It's required so `travis` (run as part of `travis.sc` ammonite script) could recognize directory as Github project.\n5. Create personal access token on Github:\n  * Go to https://github.com/settings/tokens and click \"Generate new token\"\n  * Select such scopes: `read:org, read:user, repo, user:email, write:repo_hook`\n  * Note down the token somewhere. You will need it in the next step.\n6. Depending whether you have GPG key you want to use to sign artifacts published by travis, choose from:\n  * Run `amm travis.sc createKeyAndGenerateTravis --githubToken YOUR_GITHUB_TOKEN`\n  * Run `amm travis.sc generateTravis --githubToken GITHUB_TOKEN --pgpKeyId YOUR_PGP_KEY_ID`\n\nWARNING: Never commit any of those files `secrets.tar`, `credentials.sbt`, `secring.asc`. They're in `.gitignore` so it shouldn't happen out of the box.\n\n## Release process\n\nNow, after generating the project, you can focus on writing your library for some time. When the moment of the first release comes, you will need to:\n\n```\nsbt commitRelease\n```\n\nIt runs in interactive mode in which you can specify the version you are about to publish and the next version. The current version will be pushed to Github as tag which in result will be picked up by Travis. Then Travis runs `sbt publishRelease`.\n\nRead more in sbt-softwaremill [docs](https://github.com/softwaremill/sbt-softwaremill#releasing-your-library-using-travis).\n\n## Debugging\n\nIn case something hasn't worked out out of the box you may find yourself in frustrating position of waiting for Travis to verify possible fixes.\nIn such situations, to shorten the feedback cycle, you can run the crucial part on your own laptop:\n\n```\nsbt \";test;publishSigned;sonatypeBundleRelease\"\n```\n\nIt will try to use `pubring.asc` and `secring.asc` so you need to make `deleteTmpFiles` in `travis.sc` a NOOP to make it work.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnote%2Foss-seed.g8","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnote%2Foss-seed.g8","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnote%2Foss-seed.g8/lists"}