Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Repository files navigation

Conform

Policy enforcement for your pipelines.

Conventional CommitsGoDocTravisCodecovGo Report CardReleaseGitHub (pre-)release


Conform is a tool for enforcing policies on your build pipelines.

Some of the policies included are:

  • Commits: Enforce commit policies including:
    • Commit message header length
    • Developer Certificate of Origin
    • GPG signature
    • GPG signature identity check
    • Conventional Commits
    • Imperative mood
    • Spell check
    • Maximum of one commit ahead of master
    • Require a commit body
    • Jira issue check
  • License Headers: Enforce license headers on source code files.

Getting Started

To install conform you can download a release, or build it locally (go must be installed):

go install github.com/siderolabs/conform/cmd/conform@latest

Third option is to run it as a container:

docker run --rm -it -v $PWD:/src:ro,Z -w /src ghcr.io/siderolabs/conform:v0.1.0-alpha.22 enforce

You can also install conform with aqua.

aqua g -i siderolabs/conform

Now, create a file named .conform.yaml with the following contents:

policies:
- type: commitspec:
header:
length: 89imperative: truecase: lowerinvalidLastCharacters: .jira:
keys:
- PROJ
- JIRAbody:
required: truedco: truegpg:
required: falseidentity:
gitHubOrganization: some-organizationspellcheck:
locale: USmaximumOfOneCommit: trueconventional:
types:
- "type"scopes:
- "scope"descriptionLength: 72
- type: licensespec:
skipPaths:
- .git/
- .build*/includeSuffixes:
- .extexcludeSuffixes:
- .exclude-ext-prefix.extallowPrecedingComments: falseheader: | This is the contents of a license header.

In the same directory, run:

$ conform enforce
POLICY CHECK STATUS MESSAGE
commit Header Length PASS Header is 43 characters
commit Imperative Mood PASS Commit begins with imperative verb
commit Header Case PASS Header case is valid
commit Header Last Character PASS Header last character is valid
commit DCO PASS Developer Certificate of Origin was found
commit GPG PASS GPG signature found
commit GPG Identity PASS Signed by "Someone <someone@example.com>"
commit Conventional Commit PASS Commit message is a valid conventional commit
commit Spellcheck PASS Commit contains 0 misspellings
commit Number of Commits PASS HEAD is 0 commit(s) ahead of refs/heads/master
commit Commit Body PASS Commit body is valid
license File Header PASS All files have a valid license header

To setup a commit-msg hook:

cat <<EOF | tee .git/hooks/commit-msg#!/bin/shconform enforce --commit-msg-file \$1EOF
chmod +x .git/hooks/commit-msg

We also provide a Pre-Commit hook that you can use as follows:

# .pre-commit-config.yamlrepos:
- repo: https://github.com/siderolabs/conformrev: mainhooks:
- id: conformstages:
- commit-msg

License

license

About

Policy enforcement for your pipelines.

Topics

Resources

Stars

525 stars

Watchers

9 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content
Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Repository files navigation

Conform

Policy enforcement for your pipelines.

Conventional CommitsGoDocTravisCodecovGo Report CardReleaseGitHub (pre-)release


Conform is a tool for enforcing policies on your build pipelines.

Some of the policies included are:

  • Commits: Enforce commit policies including:
    • Commit message header length
    • Developer Certificate of Origin
    • GPG signature
    • GPG signature identity check
    • Conventional Commits
    • Imperative mood
    • Spell check
    • Maximum of one commit ahead of master
    • Require a commit body
    • Jira issue check
  • License Headers: Enforce license headers on source code files.

Getting Started

To install conform you can download a release, or build it locally (go must be installed):

go install github.com/siderolabs/conform/cmd/conform@latest

Third option is to run it as a container:

docker run --rm -it -v $PWD:/src:ro,Z -w /src ghcr.io/siderolabs/conform:v0.1.0-alpha.22 enforce

You can also install conform with aqua.

aqua g -i siderolabs/conform

Now, create a file named .conform.yaml with the following contents:

policies:
- type: commitspec:
header:
length: 89imperative: truecase: lowerinvalidLastCharacters: .jira:
keys:
- PROJ
- JIRAbody:
required: truedco: truegpg:
required: falseidentity:
gitHubOrganization: some-organizationspellcheck:
locale: USmaximumOfOneCommit: trueconventional:
types:
- "type"scopes:
- "scope"descriptionLength: 72
- type: licensespec:
skipPaths:
- .git/
- .build*/includeSuffixes:
- .extexcludeSuffixes:
- .exclude-ext-prefix.extallowPrecedingComments: falseheader: | This is the contents of a license header.

In the same directory, run:

$ conform enforce
POLICY CHECK STATUS MESSAGE
commit Header Length PASS Header is 43 characters
commit Imperative Mood PASS Commit begins with imperative verb
commit Header Case PASS Header case is valid
commit Header Last Character PASS Header last character is valid
commit DCO PASS Developer Certificate of Origin was found
commit GPG PASS GPG signature found
commit GPG Identity PASS Signed by "Someone <someone@example.com>"
commit Conventional Commit PASS Commit message is a valid conventional commit
commit Spellcheck PASS Commit contains 0 misspellings
commit Number of Commits PASS HEAD is 0 commit(s) ahead of refs/heads/master
commit Commit Body PASS Commit body is valid
license File Header PASS All files have a valid license header

To setup a commit-msg hook:

cat <<EOF | tee .git/hooks/commit-msg#!/bin/shconform enforce --commit-msg-file \$1EOF
chmod +x .git/hooks/commit-msg

We also provide a Pre-Commit hook that you can use as follows:

# .pre-commit-config.yamlrepos:
- repo: https://github.com/siderolabs/conformrev: mainhooks:
- id: conformstages:
- commit-msg

License

license

About

Policy enforcement for your pipelines.

Topics

Resources

Stars

525 stars

Watchers

9 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Repository files navigation

Conform

Policy enforcement for your pipelines.

Conventional CommitsGoDocTravisCodecovGo Report CardReleaseGitHub (pre-)release


Conform is a tool for enforcing policies on your build pipelines.

Some of the policies included are:

  • Commits: Enforce commit policies including:
    • Commit message header length
    • Developer Certificate of Origin
    • GPG signature
    • GPG signature identity check
    • Conventional Commits
    • Imperative mood
    • Spell check
    • Maximum of one commit ahead of master
    • Require a commit body
    • Jira issue check
  • License Headers: Enforce license headers on source code files.

Getting Started

To install conform you can download a release, or build it locally (go must be installed):

go install github.com/siderolabs/conform/cmd/conform@latest

Third option is to run it as a container:

docker run --rm -it -v $PWD:/src:ro,Z -w /src ghcr.io/siderolabs/conform:v0.1.0-alpha.22 enforce

You can also install conform with aqua.

aqua g -i siderolabs/conform

Now, create a file named .conform.yaml with the following contents:

policies:
- type: commitspec:
header:
length: 89imperative: truecase: lowerinvalidLastCharacters: .jira:
keys:
- PROJ
- JIRAbody:
required: truedco: truegpg:
required: falseidentity:
gitHubOrganization: some-organizationspellcheck:
locale: USmaximumOfOneCommit: trueconventional:
types:
- "type"scopes:
- "scope"descriptionLength: 72
- type: licensespec:
skipPaths:
- .git/
- .build*/includeSuffixes:
- .extexcludeSuffixes:
- .exclude-ext-prefix.extallowPrecedingComments: falseheader: | This is the contents of a license header.

In the same directory, run:

$ conform enforce
POLICY CHECK STATUS MESSAGE
commit Header Length PASS Header is 43 characters
commit Imperative Mood PASS Commit begins with imperative verb
commit Header Case PASS Header case is valid
commit Header Last Character PASS Header last character is valid
commit DCO PASS Developer Certificate of Origin was found
commit GPG PASS GPG signature found
commit GPG Identity PASS Signed by "Someone <someone@example.com>"
commit Conventional Commit PASS Commit message is a valid conventional commit
commit Spellcheck PASS Commit contains 0 misspellings
commit Number of Commits PASS HEAD is 0 commit(s) ahead of refs/heads/master
commit Commit Body PASS Commit body is valid
license File Header PASS All files have a valid license header

To setup a commit-msg hook:

cat <<EOF | tee .git/hooks/commit-msg#!/bin/shconform enforce --commit-msg-file \$1EOF
chmod +x .git/hooks/commit-msg

We also provide a Pre-Commit hook that you can use as follows:

# .pre-commit-config.yamlrepos:
- repo: https://github.com/siderolabs/conformrev: mainhooks:
- id: conformstages:
- commit-msg

License

license

About

Policy enforcement for your pipelines.

Topics

Resources

Stars

525 stars

Watchers

9 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Repository files navigation

Conform

Policy enforcement for your pipelines.

Conventional CommitsGoDocTravisCodecovGo Report CardReleaseGitHub (pre-)release


Conform is a tool for enforcing policies on your build pipelines.

Some of the policies included are:

  • Commits: Enforce commit policies including:
    • Commit message header length
    • Developer Certificate of Origin
    • GPG signature
    • GPG signature identity check
    • Conventional Commits
    • Imperative mood
    • Spell check
    • Maximum of one commit ahead of master
    • Require a commit body
    • Jira issue check
  • License Headers: Enforce license headers on source code files.

Getting Started

To install conform you can download a release, or build it locally (go must be installed):

go install github.com/siderolabs/conform/cmd/conform@latest

Third option is to run it as a container:

docker run --rm -it -v $PWD:/src:ro,Z -w /src ghcr.io/siderolabs/conform:v0.1.0-alpha.22 enforce

You can also install conform with aqua.

aqua g -i siderolabs/conform

Now, create a file named .conform.yaml with the following contents:

policies:
- type: commitspec:
header:
length: 89imperative: truecase: lowerinvalidLastCharacters: .jira:
keys:
- PROJ
- JIRAbody:
required: truedco: truegpg:
required: falseidentity:
gitHubOrganization: some-organizationspellcheck:
locale: USmaximumOfOneCommit: trueconventional:
types:
- "type"scopes:
- "scope"descriptionLength: 72
- type: licensespec:
skipPaths:
- .git/
- .build*/includeSuffixes:
- .extexcludeSuffixes:
- .exclude-ext-prefix.extallowPrecedingComments: falseheader: | This is the contents of a license header.

In the same directory, run:

$ conform enforce
POLICY CHECK STATUS MESSAGE
commit Header Length PASS Header is 43 characters
commit Imperative Mood PASS Commit begins with imperative verb
commit Header Case PASS Header case is valid
commit Header Last Character PASS Header last character is valid
commit DCO PASS Developer Certificate of Origin was found
commit GPG PASS GPG signature found
commit GPG Identity PASS Signed by "Someone <someone@example.com>"
commit Conventional Commit PASS Commit message is a valid conventional commit
commit Spellcheck PASS Commit contains 0 misspellings
commit Number of Commits PASS HEAD is 0 commit(s) ahead of refs/heads/master
commit Commit Body PASS Commit body is valid
license File Header PASS All files have a valid license header

To setup a commit-msg hook:

cat <<EOF | tee .git/hooks/commit-msg#!/bin/shconform enforce --commit-msg-file \$1EOF
chmod +x .git/hooks/commit-msg

We also provide a Pre-Commit hook that you can use as follows:

# .pre-commit-config.yamlrepos:
- repo: https://github.com/siderolabs/conformrev: mainhooks:
- id: conformstages:
- commit-msg

License

license

About

Policy enforcement for your pipelines.

Topics

Resources

Stars

525 stars

Watchers

9 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content
Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Repository files navigation

Conform

Policy enforcement for your pipelines.

Conventional CommitsGoDocTravisCodecovGo Report CardReleaseGitHub (pre-)release


Conform is a tool for enforcing policies on your build pipelines.

Some of the policies included are:

  • Commits: Enforce commit policies including:
    • Commit message header length
    • Developer Certificate of Origin
    • GPG signature
    • GPG signature identity check
    • Conventional Commits
    • Imperative mood
    • Spell check
    • Maximum of one commit ahead of master
    • Require a commit body
    • Jira issue check
  • License Headers: Enforce license headers on source code files.

Getting Started

To install conform you can download a release, or build it locally (go must be installed):

go install github.com/siderolabs/conform/cmd/conform@latest

Third option is to run it as a container:

docker run --rm -it -v $PWD:/src:ro,Z -w /src ghcr.io/siderolabs/conform:v0.1.0-alpha.22 enforce

You can also install conform with aqua.

aqua g -i siderolabs/conform

Now, create a file named .conform.yaml with the following contents:

policies:
- type: commitspec:
header:
length: 89imperative: truecase: lowerinvalidLastCharacters: .jira:
keys:
- PROJ
- JIRAbody:
required: truedco: truegpg:
required: falseidentity:
gitHubOrganization: some-organizationspellcheck:
locale: USmaximumOfOneCommit: trueconventional:
types:
- "type"scopes:
- "scope"descriptionLength: 72
- type: licensespec:
skipPaths:
- .git/
- .build*/includeSuffixes:
- .extexcludeSuffixes:
- .exclude-ext-prefix.extallowPrecedingComments: falseheader: | This is the contents of a license header.

In the same directory, run:

$ conform enforce
POLICY CHECK STATUS MESSAGE
commit Header Length PASS Header is 43 characters
commit Imperative Mood PASS Commit begins with imperative verb
commit Header Case PASS Header case is valid
commit Header Last Character PASS Header last character is valid
commit DCO PASS Developer Certificate of Origin was found
commit GPG PASS GPG signature found
commit GPG Identity PASS Signed by "Someone <someone@example.com>"
commit Conventional Commit PASS Commit message is a valid conventional commit
commit Spellcheck PASS Commit contains 0 misspellings
commit Number of Commits PASS HEAD is 0 commit(s) ahead of refs/heads/master
commit Commit Body PASS Commit body is valid
license File Header PASS All files have a valid license header

To setup a commit-msg hook:

cat <<EOF | tee .git/hooks/commit-msg#!/bin/shconform enforce --commit-msg-file \$1EOF
chmod +x .git/hooks/commit-msg

We also provide a Pre-Commit hook that you can use as follows:

# .pre-commit-config.yamlrepos:
- repo: https://github.com/siderolabs/conformrev: mainhooks:
- id: conformstages:
- commit-msg

License

license

About

Policy enforcement for your pipelines.

Topics

Resources

Stars

525 stars

Watchers

9 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Repository files navigation

Conform

Policy enforcement for your pipelines.

Conventional CommitsGoDocTravisCodecovGo Report CardReleaseGitHub (pre-)release


Conform is a tool for enforcing policies on your build pipelines.

Some of the policies included are:

  • Commits: Enforce commit policies including:
    • Commit message header length
    • Developer Certificate of Origin
    • GPG signature
    • GPG signature identity check
    • Conventional Commits
    • Imperative mood
    • Spell check
    • Maximum of one commit ahead of master
    • Require a commit body
    • Jira issue check
  • License Headers: Enforce license headers on source code files.

Getting Started

To install conform you can download a release, or build it locally (go must be installed):

go install github.com/siderolabs/conform/cmd/conform@latest

Third option is to run it as a container:

docker run --rm -it -v $PWD:/src:ro,Z -w /src ghcr.io/siderolabs/conform:v0.1.0-alpha.22 enforce

You can also install conform with aqua.

aqua g -i siderolabs/conform

Now, create a file named .conform.yaml with the following contents:

policies:
- type: commitspec:
header:
length: 89imperative: truecase: lowerinvalidLastCharacters: .jira:
keys:
- PROJ
- JIRAbody:
required: truedco: truegpg:
required: falseidentity:
gitHubOrganization: some-organizationspellcheck:
locale: USmaximumOfOneCommit: trueconventional:
types:
- "type"scopes:
- "scope"descriptionLength: 72
- type: licensespec:
skipPaths:
- .git/
- .build*/includeSuffixes:
- .extexcludeSuffixes:
- .exclude-ext-prefix.extallowPrecedingComments: falseheader: | This is the contents of a license header.

In the same directory, run:

$ conform enforce
POLICY CHECK STATUS MESSAGE
commit Header Length PASS Header is 43 characters
commit Imperative Mood PASS Commit begins with imperative verb
commit Header Case PASS Header case is valid
commit Header Last Character PASS Header last character is valid
commit DCO PASS Developer Certificate of Origin was found
commit GPG PASS GPG signature found
commit GPG Identity PASS Signed by "Someone <someone@example.com>"
commit Conventional Commit PASS Commit message is a valid conventional commit
commit Spellcheck PASS Commit contains 0 misspellings
commit Number of Commits PASS HEAD is 0 commit(s) ahead of refs/heads/master
commit Commit Body PASS Commit body is valid
license File Header PASS All files have a valid license header

To setup a commit-msg hook:

cat <<EOF | tee .git/hooks/commit-msg#!/bin/shconform enforce --commit-msg-file \$1EOF
chmod +x .git/hooks/commit-msg

We also provide a Pre-Commit hook that you can use as follows:

# .pre-commit-config.yamlrepos:
- repo: https://github.com/siderolabs/conformrev: mainhooks:
- id: conformstages:
- commit-msg

License

license

About

Policy enforcement for your pipelines.

Topics

Resources

Stars

525 stars

Watchers

9 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Repository files navigation

Conform

Policy enforcement for your pipelines.

Conventional CommitsGoDocTravisCodecovGo Report CardReleaseGitHub (pre-)release


Conform is a tool for enforcing policies on your build pipelines.

Some of the policies included are:

  • Commits: Enforce commit policies including:
    • Commit message header length
    • Developer Certificate of Origin
    • GPG signature
    • GPG signature identity check
    • Conventional Commits
    • Imperative mood
    • Spell check
    • Maximum of one commit ahead of master
    • Require a commit body
    • Jira issue check
  • License Headers: Enforce license headers on source code files.

Getting Started

To install conform you can download a release, or build it locally (go must be installed):

go install github.com/siderolabs/conform/cmd/conform@latest

Third option is to run it as a container:

docker run --rm -it -v $PWD:/src:ro,Z -w /src ghcr.io/siderolabs/conform:v0.1.0-alpha.22 enforce

You can also install conform with aqua.

aqua g -i siderolabs/conform

Now, create a file named .conform.yaml with the following contents:

policies:
- type: commitspec:
header:
length: 89imperative: truecase: lowerinvalidLastCharacters: .jira:
keys:
- PROJ
- JIRAbody:
required: truedco: truegpg:
required: falseidentity:
gitHubOrganization: some-organizationspellcheck:
locale: USmaximumOfOneCommit: trueconventional:
types:
- "type"scopes:
- "scope"descriptionLength: 72
- type: licensespec:
skipPaths:
- .git/
- .build*/includeSuffixes:
- .extexcludeSuffixes:
- .exclude-ext-prefix.extallowPrecedingComments: falseheader: | This is the contents of a license header.

In the same directory, run:

$ conform enforce
POLICY CHECK STATUS MESSAGE
commit Header Length PASS Header is 43 characters
commit Imperative Mood PASS Commit begins with imperative verb
commit Header Case PASS Header case is valid
commit Header Last Character PASS Header last character is valid
commit DCO PASS Developer Certificate of Origin was found
commit GPG PASS GPG signature found
commit GPG Identity PASS Signed by "Someone <someone@example.com>"
commit Conventional Commit PASS Commit message is a valid conventional commit
commit Spellcheck PASS Commit contains 0 misspellings
commit Number of Commits PASS HEAD is 0 commit(s) ahead of refs/heads/master
commit Commit Body PASS Commit body is valid
license File Header PASS All files have a valid license header

To setup a commit-msg hook:

cat <<EOF | tee .git/hooks/commit-msg#!/bin/shconform enforce --commit-msg-file \$1EOF
chmod +x .git/hooks/commit-msg

We also provide a Pre-Commit hook that you can use as follows:

# .pre-commit-config.yamlrepos:
- repo: https://github.com/siderolabs/conformrev: mainhooks:
- id: conformstages:
- commit-msg

License

license

About

Policy enforcement for your pipelines.

Topics

Resources

Stars

525 stars

Watchers

9 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content
Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Repository files navigation

Conform

Policy enforcement for your pipelines.

Conventional CommitsGoDocTravisCodecovGo Report CardReleaseGitHub (pre-)release


Conform is a tool for enforcing policies on your build pipelines.

Some of the policies included are:

  • Commits: Enforce commit policies including:
    • Commit message header length
    • Developer Certificate of Origin
    • GPG signature
    • GPG signature identity check
    • Conventional Commits
    • Imperative mood
    • Spell check
    • Maximum of one commit ahead of master
    • Require a commit body
    • Jira issue check
  • License Headers: Enforce license headers on source code files.

Getting Started

To install conform you can download a release, or build it locally (go must be installed):

go install github.com/siderolabs/conform/cmd/conform@latest

Third option is to run it as a container:

docker run --rm -it -v $PWD:/src:ro,Z -w /src ghcr.io/siderolabs/conform:v0.1.0-alpha.22 enforce

You can also install conform with aqua.

aqua g -i siderolabs/conform

Now, create a file named .conform.yaml with the following contents:

policies:
- type: commitspec:
header:
length: 89imperative: truecase: lowerinvalidLastCharacters: .jira:
keys:
- PROJ
- JIRAbody:
required: truedco: truegpg:
required: falseidentity:
gitHubOrganization: some-organizationspellcheck:
locale: USmaximumOfOneCommit: trueconventional:
types:
- "type"scopes:
- "scope"descriptionLength: 72
- type: licensespec:
skipPaths:
- .git/
- .build*/includeSuffixes:
- .extexcludeSuffixes:
- .exclude-ext-prefix.extallowPrecedingComments: falseheader: | This is the contents of a license header.

In the same directory, run:

$ conform enforce
POLICY CHECK STATUS MESSAGE
commit Header Length PASS Header is 43 characters
commit Imperative Mood PASS Commit begins with imperative verb
commit Header Case PASS Header case is valid
commit Header Last Character PASS Header last character is valid
commit DCO PASS Developer Certificate of Origin was found
commit GPG PASS GPG signature found
commit GPG Identity PASS Signed by "Someone <someone@example.com>"
commit Conventional Commit PASS Commit message is a valid conventional commit
commit Spellcheck PASS Commit contains 0 misspellings
commit Number of Commits PASS HEAD is 0 commit(s) ahead of refs/heads/master
commit Commit Body PASS Commit body is valid
license File Header PASS All files have a valid license header

To setup a commit-msg hook:

cat <<EOF | tee .git/hooks/commit-msg#!/bin/shconform enforce --commit-msg-file \$1EOF
chmod +x .git/hooks/commit-msg

We also provide a Pre-Commit hook that you can use as follows:

# .pre-commit-config.yamlrepos:
- repo: https://github.com/siderolabs/conformrev: mainhooks:
- id: conformstages:
- commit-msg

License

license

About

Policy enforcement for your pipelines.

Topics

Resources

Stars

525 stars

Watchers

9 watching

Forks

Releases

Packages

Used by

Contributors

Languages