Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Repo cleanup and consistency #33

Closed
49 tasks done
kinbiko opened this issue Apr 16, 2022 · 0 comments · Fixed by #34
Closed
49 tasks done

Repo cleanup and consistency #33

kinbiko opened this issue Apr 16, 2022 · 0 comments · Fixed by #34

Comments

@kinbiko
Copy link
Owner

kinbiko commented Apr 16, 2022

Setting up the repository

This document serves as both a list of all the rules and steps to set up a very good open source Go project, and also the issue contents of the GitHub issue generated by github.com/kinbiko/go-template's astroturf.sh script that automates a bunch of these very steps.

CI

  • Builds against one of the 2 latest Go versions
  • Has golangci-lint v1.45.2 passing
  • Runs tests with the race detector
  • Runs integration tests, if applicable
  • Reports coverage to coveralls
  • Code scanning with CodeQL

Community Standards

  • Description w/ tags
  • README
  • Code of conduct
  • Contributing guideline
  • License
  • Issue template(s)
  • Pull request template
  • CODEOWNERS

GitHub settings

  • Wiki pages disabled
  • Sponsorship enabled
  • Projects disabled (my OSS work is managed in a central project board)
  • GitHub archive program enabled
  • Discussions disabled
  • Merge commits disabled
  • Squash merging enabled
  • Rebase merging disabled
  • Suggest updating branches enabled
  • Auto-merge disabled
  • Auto-delete head branches enabled
  • Limit "approve" or "request changes" to users with explicit permissions
  • Default branch is main, with the following branch protection rules enabled (everything else disabled):
    • Require PRs before merging (no approvals required, don't dismiss PR approvals on new commits, don't require codeowner review)
    • Linear history enabled (assumption: only enabling squash merges globally means linear history in default branch)
  • Allow kinbiko and select non-kinbiko actions only:
    • Allow actions created by GitHub enabled
    • Allow actions by Marketplace verified creators enabled
    • shogo82148/actions-goveralls@v1 added as allowed action
  • Require approval before running actions for first-time contributors
  • GitHub actions approving PRs disabled
  • Dependabot alerts enabled for security vulns
  • Dependabot updates enabled for security vulns
  • Code scanning (CodeQL) enabled
  • Consistent labels:
    • bug
    • dependencies
    • documentation
    • enhancement
    • good first issue
    • help wanted
    • question

README

  • Has tags:
    • Build status
    • Coverage percentage
    • Go report link
    • Latest version
    • Godoc with link to pkg.go.dev
    • License tag
  • Explains the why and then the what.
  • Usage information incl any installation guidelines
  • Link to docs
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

1 participant