Skip to content

Commit

Permalink
chore: init
Browse files Browse the repository at this point in the history
  • Loading branch information
JaeAeich committed Aug 18, 2024
0 parents commit 6186253
Show file tree
Hide file tree
Showing 7 changed files with 498 additions and 0 deletions.
49 changes: 49 additions & 0 deletions .github/ISSUE_TEMPLATE/general-purpose.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
Your issue may already be reported! Please search on the
[issue tracker][issue-tracker] before creating one.

## Expected behavior

<!--- If you're describing a bug, tell us what should happen -->

<!--- If you're suggesting a change/improvement, tell us how it should work -->

## Current behavior

<!--- If describing a bug, tell us what happens instead of the expected
behavior -->

<!--- If suggesting a change/improvement, explain the difference from current
behavior -->

## Possible solution

<!--- Not obligatory, but suggest a fix/reason for the bug, -->

<!--- or ideas how to implement the addition or change -->

## Context

<!--- How has this issue affected you? What are you trying to accomplish? -->

<!--- Providing context helps us come up with a solution that is most useful in
the real world -->

## Steps to reproduce (FOR BUGS)

<!--- Provide a link to a live example, or an unambiguous set of steps to -->

<!--- reproduce this bug. Include code to reproduce, if relevant -->

1.

## Your environment (FOR BUGS)

<!--- Include as many relevant details about the environment you experienced the
bug in -->

- Version used:
- Browser Name and version:
- Operating System and version (desktop or mobile):
- Link to your project:

[issue-tracker]: https://github.com/elixir-cloud-aai/actions/issues
72 changes: 72 additions & 0 deletions .github/workflows/pr_validation.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
---
name: PR evaluation

on:
pull_request:
types: [opened, synchronize, reopened, ready_for_review, edited]
branches: ['main']

jobs:
detect-unresolved-conflicts:
name: Detect unresolved merge conflicts
runs-on: ubuntu-latest
needs: semantic_pr
steps:
- uses: actions/checkout@v3
- name: List files with merge conflict markers
run: git --no-pager grep "<<<<<<<" ":(exclude).github/" || true
- name: Fail or succeed job if any files with merge conflict markers
run: exit $(git grep "<<<<<<<" ":(exclude).github/" | wc --lines)

pre-commit:
name: Pre-commit checks
runs-on: ubuntu-latest
steps:
- name: Check out repository
uses: actions/checkout@v4

- name: Set pre-commit
run: apt install -y pre-commit
shell: bash

- name: Check all the pre-commit hooks passed
run: pre-commit run --all-files

semantic-pr:
name: Semantic PR title
runs-on: ubuntu-latest
if: ${{ github.event.action != 'edited' ||
github.event.changes.title != null }}
steps:
- name: Check if the PR title is semantic
uses: amannn/action-semantic-pull-request@v5
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
types: |
fix
feat
docs
style
refactor
perf
test
build
ci
chore
revert
subjectPattern: ^(?![A-Z])(?=.{1,50}$).+$
subjectPatternError: |
The subject "{subject}" found in the pull request title "{title}"
didn't match the configured pattern. Please ensure that the subject
doesn't start with an uppercase character & not have more than 50
characters.
- name: Check length of PR title
run: |
PR_TITLE="${{ github.event.pull_request.title }}"
if [ ${#PR_TITLE} -gt 50 ]; then
echo "The PR title is too long. Please keep it under 50 characters."
exit 1
fi
...
74 changes: 74 additions & 0 deletions .markdownlint.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
---
default: true

# Headings
MD001:
level: 1 # Require headings to increment by one level at a time
MD002:
level: 2 # Require that the first heading in a document is a level 2 heading
MD003:
style: atx # Enforce a consistent style for headings (e.g., atx style #)

# Unordered Lists
MD004:
style: dash # Enforce consistent marker style (e.g., - for list items)
MD005: true # Ensure list indentation is consistent
MD006: true # Require proper indentation for list items
MD007:
indent: 2 # Enforce a consistent indentation level for nested list items

# Line Length
MD013:
line_length: 80 # Limit line length to 80 characters
code_blocks: false # Exclude code blocks from line length rule
tables: false # Exclude tables from line length rule

# Trailing Spaces
MD009:
strict: true # Ensure no trailing spaces at the end of lines

# Punctuation
MD026:
punctuation: ".,;:!" # Ensure proper punctuation in headings

# Horizontal Rules
MD035:
style: "***" # Enforce a consistent style for horizontal rules

# Links and Images
MD042: true # Require proper use of URLs in links
MD045: true # Ensure alt text is provided for images

# General Formatting
MD010: true # No hard tabs
MD012:
maximum: 1 # No multiple consecutive blank lines
MD014: true # Dollar signs used before commands without showing output
MD018: true # No space after hash on atx style heading
MD019: true # Multiple spaces after hash on atx style heading
MD020: true # No space inside hashes on closed atx style heading
MD021: true # No multiple spaces inside hashes on closed atx style heading
MD022: true # Headings should be surrounded by blank lines
MD023: true # Headings must start at the beginning of the line
MD024: true # Multiple headings with the same content
MD025: true # Multiple top-level headings in the same document
MD027: true # Multiple spaces after blockquote symbol
MD028: true # Blank line inside blockquote
MD029: true # Ordered list item prefix
MD030: true # Spaces after list markers
MD031: true # Fenced code blocks should be surrounded by blank lines
MD032: true # Lists should be surrounded by blank lines
MD033: true # Inline HTML
MD034: true # Bare URL used
MD036: true # Emphasis used instead of a header
MD037: true # Spaces inside emphasis markers
MD038: true # Spaces inside code span elements
MD039: true # Spaces inside link elements
MD040: true # Fenced code blocks should have a language specified
MD041: false # First line need not be h1
MD046: true # Code block style
MD047: true # Files should end with a single newline character
MD048: true # Code fence style
MD049: true # Required heading structure
MD050: true # Strong style should be consistent
...
37 changes: 37 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
---
# See https://pre-commit.com for more information
# See https://pre-commit.com/hooks.html for more hooks
# Common commands:
# pre-commit install
# pre-commit autoupdate
# pre-commit run --all-files --hook-stage commit
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.6.0
hooks:
- id: check-added-large-files
- id: destroyed-symlinks
- id: detect-private-key
- id: end-of-file-fixer
- id: mixed-line-ending
args: [--fix=auto]
- id: trailing-whitespace
- repo: https://github.com/igorshubovych/markdownlint-cli
rev: v0.41.0
hooks:
- id: markdownlint
args: ["--fix"]
- repo: https://github.com/executablebooks/mdformat
rev: 0.7.17
hooks:
- id: mdformat
additional_dependencies:
- mdformat-config
- mdformat-black
- mdformat-frontmatter
args: [--wrap=80]
- repo: https://github.com/adrienverge/yamllint.git
rev: v1.35.1
hooks:
- id: yamllint
...
72 changes: 72 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
[![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-2.1-4baaaa.svg)][code-of-conduct]
[![GitHub contributors](https://img.shields.io/github/contributors/elixir-cloud-aai/actions/)](https://github.com/elixir-cloud-aai/actions/graphs/contributors)

# Actions

Collection of GitHub Actions that are used in the ELIXIR Cloud & AAI projects.

## Table of Contents

- [Contributing](#contributing)
- [Code of Conduct](#code-of-conduct)
- [Versioning](#versioning)
- [License](#license)
- [Contact](#contact)

## Contributing

This project is a community effort and lives off _your_ contributions, be it in
the form of bug reports, feature requests, discussions, fixes or any other form
of contribution!

Please refer to the guidelines available at [`CONTRIBUTING.md`][contributing] if
you are interested in contributing.

## Code of Conduct

We kindly request all contributors to abide by our
[organization's Code of Conduct][code-of-conduct]. Please also refer to this
document if you want to report an incident with respect to conduct in our
community. Thank you for your cooperation.

## Versioning

The project adopts the [semantic versioning][semver] scheme for versioning.
Currently the service is in a pre-release stage, so changes to the API,
including breaking changes, may occur at any time without further notice.

## License

This project is distributed under the [Apache License 2.0][badge-license-url], a
copy of which is also available in [`LICENSE`][license].

## Contact

The project is maintained by [ELIXIR Cloud & AAI][elixir-cloud-aai], a Driver
Project of the [Global Alliance for Genomics and Health (GA4GH)][ga4gh], under
the umbrella of the [ELIXIR] [Compute Platform][elixir-compute].

To get in touch with us, please use one of the following routes:

- For filing bug reports, feature requests or other code-related issues, please
make use of the project's
[issue tracker](https://github.com/elixir-cloud-aai/actions/issues).
- For private/personal issues, more involved communication, or if you would like
to join our team as a regular contributor, you can either join our
[chat board][badge-chat-url] or [email] the community leaders.

[![logo-elixir]][elixir] [![logo-elixir-cloud-aai]][elixir-cloud-aai]

[badge-chat-url]: https://join.slack.com/t/elixir-cloud/shared_invite/enQtNzA3NTQ5Mzg2NjQ3LTZjZGI1OGQ5ZTRiOTRkY2ExMGUxNmQyODAxMDdjM2EyZDQ1YWM0ZGFjOTJhNzg5NjE0YmJiZTZhZDVhOWE4MWM
[badge-license-url]: http://www.apache.org/licenses/LICENSE-2.0
[code-of-conduct]: https://elixir-cloud-aai.github.io/about/code-of-conduct/
[contributing]: https://elixir-cloud-aai.github.io/guides/guide-contributor/
[elixir]: https://elixir-europe.org/
[elixir-cloud-aai]: https://elixir-cloud.dcc.sib.swiss/
[elixir-compute]: https://elixir-europe.org/platforms/compute
[email]: mailto:cloud-service@elixir-europe.org
[ga4gh]: https://ga4gh.org/
[license]: LICENSE
[logo-elixir]: images/logo-elixir.svg
[logo-elixir-cloud-aai]: images/logo-elixir-cloud-aai.svg
[semver]: https://semver.org/
Loading

0 comments on commit 6186253

Please sign in to comment.