From cbdd6227eb219220b6efbd27368a5bb4913a8365 Mon Sep 17 00:00:00 2001 From: Markus Pesch Date: Fri, 19 Apr 2024 22:03:59 +0200 Subject: [PATCH] fix(ci): markdownlint --- .markdownlint.yaml | 175 ++++++++++++++++++++++++++++++++++++++------- Makefile | 16 +++++ README.md | 30 ++++---- 3 files changed, 177 insertions(+), 44 deletions(-) diff --git a/.markdownlint.yaml b/.markdownlint.yaml index 57b2fbf..346891a 100644 --- a/.markdownlint.yaml +++ b/.markdownlint.yaml @@ -7,23 +7,32 @@ default: true # Path to configuration file to extend extends: null -# MD003/heading-style/header-style - Heading style +# MD001/heading-increment : Heading levels should only increment by one level at a time : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md001.md +MD001: true + +# MD003/heading-style : Heading style : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md003.md MD003: # Heading style style: "atx" -# MD004/ul-style - Unordered list style +# MD004/ul-style : Unordered list style : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md004.md MD004: + # List style style: "dash" -# MD007/ul-indent - Unordered list indentation +# MD005/list-indent : Inconsistent indentation for list items at the same level : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md005.md +MD005: true + +# MD007/ul-indent : Unordered list indentation : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md007.md MD007: # Spaces for indent indent: 2 # Whether to indent the first level of the list start_indented: false + # Spaces for first level indent (when start_indented is set) + start_indent: 2 -# MD009/no-trailing-spaces - Trailing spaces +# MD009/no-trailing-spaces : Trailing spaces : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md009.md MD009: # Spaces for line break br_spaces: 2 @@ -32,67 +41,93 @@ MD009: # Include unnecessary breaks strict: false -# MD010/no-hard-tabs - Hard tabs +# MD010/no-hard-tabs : Hard tabs : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md010.md MD010: # Include code blocks code_blocks: true + # Fenced code languages to ignore + ignore_code_languages: [] + # Number of spaces for each hard tab + spaces_per_tab: 1 # MD012/no-multiple-blanks - Multiple consecutive blank lines MD012: # Consecutive blank lines maximum: 1 -# MD013/line-length - Line length +# MD013/line-length : Line length : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md013.md MD013: # Number of characters - line_length: 80 + line_length: 120 # Number of characters for headings - heading_line_length: 80 + heading_line_length: 120 # Number of characters for code blocks - code_block_line_length: 80 + code_block_line_length: 120 # Include code blocks code_blocks: false # Include tables tables: false # Include headings headings: true - # Include headings - headers: true # Strict length checking strict: false # Stern length checking stern: false -# MD022/blanks-around-headings/blanks-around-headers - Headings should be surrounded by blank lines +# MD014/commands-show-output : Dollar signs used before commands without showing output : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md014.md +MD014: true + +# MD018/no-missing-space-atx : No space after hash on atx style heading : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md018.md +MD018: true + +# MD019/no-multiple-space-atx : Multiple spaces after hash on atx style heading : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md019.md +MD019: true + +# MD020/no-missing-space-closed-atx : No space inside hashes on closed atx style heading : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md020.md +MD020: true + +# MD021/no-multiple-space-closed-atx : Multiple spaces inside hashes on closed atx style heading : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md021.md +MD021: true + +# MD022/blanks-around-headings : Headings should be surrounded by blank lines : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md022.md MD022: # Blank lines above heading lines_above: 1 # Blank lines below heading lines_below: 1 -# MD024/no-duplicate-heading/no-duplicate-header - Multiple headings with the same content +# MD023/heading-start-left : Headings must start at the beginning of the line : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md023.md +MD023: true + +# MD024/no-duplicate-heading : Multiple headings with the same content : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md024.md MD024: # Only check sibling headings - allow_different_nesting: true + siblings_only: true -# MD025/single-title/single-h1 - Multiple top-level headings in the same document +# MD025/single-title/single-h1 : Multiple top-level headings in the same document : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md025.md MD025: # Heading level level: 1 # RegExp for matching title in front matter front_matter_title: "^\\s*title\\s*[:=]" -# MD026/no-trailing-punctuation - Trailing punctuation in heading +# MD026/no-trailing-punctuation : Trailing punctuation in heading : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md026.md MD026: # Punctuation characters punctuation: ".,;:!。,;:!" -# MD029/ol-prefix - Ordered list item prefix +# MD027/no-multiple-space-blockquote : Multiple spaces after blockquote symbol : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md027.md +MD027: true + +# MD028/no-blanks-blockquote : Blank line inside blockquote : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md028.md +MD028: true + +# MD029/ol-prefix : Ordered list item prefix : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md029.md MD029: # List style style: "one_or_ordered" -# MD030/list-marker-space - Spaces after list markers +# MD030/list-marker-space : Spaces after list markers : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md030.md MD030: # Spaces for single-line unordered list items ul_single: 1 @@ -103,35 +138,74 @@ MD030: # Spaces for multi-line ordered list items ol_multi: 1 -# MD033/no-inline-html - Inline HTML +# MD031/blanks-around-fences : Fenced code blocks should be surrounded by blank lines : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md031.md +MD031: + # Include list items + list_items: true + +# MD032/blanks-around-lists : Lists should be surrounded by blank lines : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md032.md +MD032: true + +# MD033/no-inline-html : Inline HTML : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md033.md MD033: # Allowed elements allowed_elements: [] -# MD035/hr-style - Horizontal rule style +# MD034/no-bare-urls : Bare URL used : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md034.md +MD034: true + +# MD035/hr-style : Horizontal rule style : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md035.md MD035: # Horizontal rule style style: "---" -# MD036/no-emphasis-as-heading/no-emphasis-as-header - Emphasis used instead of a heading +# MD036/no-emphasis-as-heading : Emphasis used instead of a heading : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md036.md MD036: # Punctuation characters punctuation: ".,;:!?。,;:!?" -# MD041/first-line-heading/first-line-h1 - First line in a file should be a top-level heading +# MD037/no-space-in-emphasis : Spaces inside emphasis markers : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md037.md +MD037: true + +# MD038/no-space-in-code : Spaces inside code span elements : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md038.md +MD038: true + +# MD039/no-space-in-links : Spaces inside link text : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md039.md +MD039: true + +# MD040/fenced-code-language : Fenced code blocks should have a language specified : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md040.md +MD040: + # List of languages + allowed_languages: [] + # Require language only + language_only: false + +# MD041/first-line-heading/first-line-h1 : First line in a file should be a top-level heading : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md041.md MD041: # Heading level level: 1 # RegExp for matching title in front matter front_matter_title: "^\\s*title\\s*[:=]" -# MD044/proper-names - Proper names should have the correct capitalization +# MD042/no-empty-links : No empty links : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md042.md +MD042: true + +# MD043/required-headings : Required heading structure : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md043.md +# MD043: +# # List of headings +# headings: [] +# # Match case of headings +# match_case: false + +# MD044/proper-names : Proper names should have the correct capitalization : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md044.md MD044: # List of proper names - names: [] - # - some-thing + names: + - Dedalus HealthCare GmbH # Include code blocks code_blocks: false + # Include HTML elements + html_elements: false # MD046/code-block-style - Code block style MD046: @@ -140,5 +214,52 @@ MD046: # MD048/code-fence-style - Code fence style MD048: - # Code fence syle - style: "backtick" \ No newline at end of file + # Code fence style + style: "backtick" + +# MD049/emphasis-style : Emphasis style : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md049.md +MD049: + # Emphasis style + style: "asterisk" + +# MD050/strong-style : Strong style : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md050.md +MD050: + # Strong style + style: "asterisk" + +# MD051/link-fragments : Link fragments should be valid : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md051.md +MD051: true + +# MD052/reference-links-images : Reference links and images should use a label that is defined : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md052.md +MD052: + # Include shortcut syntax + shortcut_syntax: false + +# MD053/link-image-reference-definitions : Link and image reference definitions should be needed : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md053.md +MD053: + # Ignored definitions + ignored_definitions: + - "//" + +# MD054/link-image-style : Link and image style : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md054.md +MD054: + # Allow autolinks + autolink: true + # Allow inline links and images + inline: true + # Allow full reference links and images + full: true + # Allow collapsed reference links and images + collapsed: true + # Allow shortcut reference links and images + shortcut: true + # Allow URLs as inline links + url_inline: true + +# MD055/table-pipe-style : Table pipe style : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md055.md +MD055: + # Table pipe style + style: "leading_and_trailing" + +# MD056/table-column-count : Table column count : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md056.md +MD056: true diff --git a/Makefile b/Makefile index 8aaa758..e60d0f7 100644 --- a/Makefile +++ b/Makefile @@ -13,6 +13,12 @@ BUILD_IMAGE_VERSION?=latest BUILD_IMAGE_FULLY_QUALIFIED=${BUILD_IMAGE_REGISTRY_HOST}/${BUILD_IMAGE_NAMESPACE}/${BUILD_IMAGE_REPOSITORY}:${BUILD_IMAGE_VERSION} BUILD_IMAGE_UNQUALIFIED=${BUILD_IMAGE_NAMESPACE}/${BUILD_IMAGE_REPOSITORY}:${BUILD_IMAGE_VERSION} +# MARKDOWNLINT_IMAGE +MARKDOWNLINT_IMAGE_REGISTRY_HOST?=docker.io +MARKDOWNLINT_IMAGE_REPOSITORY=volkerraschek/markdownlint +MARKDOWNLINT_IMAGE_VERSION?=0.39.0 # renovate: datasource=docker registryUrl=https://docker.io depName=volkerraschek/markdownlint +MARKDOWNLINT_IMAGE_FULLY_QUALIFIED=${MARKDOWNLINT_IMAGE_REGISTRY_HOST}/${MARKDOWNLINT_IMAGE_REPOSITORY}:${MARKDOWNLINT_IMAGE_VERSION} + # BUILD CONTAINER IMAGE # ============================================================================== PHONY:=container-image/build @@ -39,6 +45,16 @@ container-image/push: echo ${BUILD_IMAGE_REGISTRY_PASSWORD} | ${CONTAINER_RUNTIME} login ${BUILD_IMAGE_REGISTRY_HOST} --username ${BUILD_IMAGE_REGISTRY_USER} --password-stdin ${CONTAINER_RUNTIME} push ${BUILD_IMAGE_FULLY_QUALIFIED} +# CONTAINER RUN - MARKDOWN-LINT +# ============================================================================== +PHONY+=container-run/markdown-lint +container-run/markdown-lint: + ${CONTAINER_RUNTIME} run \ + --rm \ + --volume $(shell pwd):/work \ + ${MARKDOWNLINT_IMAGE_FULLY_QUALIFIED} \ + *.md + # PHONY # ============================================================================== # Declare the contents of the PHONY variable as phony. We keep that information diff --git a/README.md b/README.md index e410300..33a5e72 100644 --- a/README.md +++ b/README.md @@ -3,10 +3,9 @@ [![Build Status](https://drone.cryptic.systems/api/badges/volker.raschek/build-image/status.svg)](https://drone.cryptic.systems/volker.raschek/build-image) [![Docker Pulls](https://img.shields.io/docker/pulls/volkerraschek/build-image)](https://hub.docker.com/r/volkerraschek/build-image) -This project contains all sources to build the container image -`docker.io/volkerraschek/build-image`. The primary goal of the image is only to -provide an environment to compile source code for `go` or `rust` and package -compiled binaries as PKG for Arch Linux or as RPM for RHEL based distributions. +This project contains all sources to build the container image `docker.io/volkerraschek/build-image`. The primary goal +of the image is only to provide an environment to compile source code for `go` or `rust` and package compiled binaries +as PKG for Arch Linux or as RPM for RHEL based distributions. ## Supported environment variables @@ -14,8 +13,8 @@ compiled binaries as PKG for Arch Linux or as RPM for RHEL based distributions. #### GNUPG_KEY -Import private gpg key via `GPG_KEY`. The private key must be escaped to import -the key inside the container image correctly. For example: +Import private gpg key via `GPG_KEY`. The private key must be escaped to import the key inside the container image +correctly. For example: ```bash GPG_FPR=YOUR_GPG_FINGERPRINT @@ -24,8 +23,8 @@ GPG_KEY=$(gpg --armor --export-secret-keys ${GPG_FPR} | cat -e | sed -e 's/\$/\\ ### makepkg -The `makepkg.conf` configuration is composed from the environment variables with -the prefix `MAKEPKG_`. Below are some examples: +The `makepkg.conf` configuration is composed from the environment variables with the prefix `MAKEPKG_`. Below are some +examples: `MAKEPKG_PACKAGER="Hugo McKinnock "` `MAKEPKG_GPGKEY="0123456789"` @@ -35,8 +34,8 @@ the prefix `MAKEPKG_`. Below are some examples: #### SSH_KEY -Import private ssh key via `SSH_KEY`. The private key must be escaped to import -the key inside the container image correctly. For example: +Import private ssh key via `SSH_KEY`. The private key must be escaped to import the key inside the container image +correctly. For example: ```bash SSH_KEY=$(cat -e ${HOME}/.ssh/id_rsa | sed -e 's/\$/\\n/g') @@ -46,8 +45,7 @@ SSH_KEY=$(cat -e ${HOME}/.ssh/id_rsa | sed -e 's/\$/\\n/g') ### golang -To use this image for building golang applications execute this in your root -folder of your go project. +To use this image for building golang applications execute this in your root folder of your go project. ```bash $ docker run \ @@ -59,9 +57,8 @@ $ docker run \ ### makepkg -With the following example will be an package be build for Arch Linux. Execute -the commond in the root directory of the project, where the `PKGBUILD` file is -located. +With the following example will be an package be build for Arch Linux. Execute the commond in the root directory of the +project, where the `PKGBUILD` file is located. ```bash $ docker run \ @@ -74,8 +71,7 @@ $ docker run \ ### rust -If you want to compile instead go rust sourcecode, than you can do it similar to -the golang example. +If you want to compile instead go rust sourcecode, than you can do it similar to the golang example. ```bash $ docker run \