From e5a514089f20fbe8ec82176c45fb69e4f5963aaf Mon Sep 17 00:00:00 2001 From: Rhys Arkins <rhys@arkins.net> Date: Sat, 29 Feb 2020 22:55:36 +0100 Subject: [PATCH] docs: add and enforce readme files for each manager Closes #5597 --- lib/manager/ansible-galaxy/readme.md | 1 + lib/manager/ansible/readme.md | 1 + lib/manager/buildkite/readme.md | 1 + lib/manager/bundler/readme.md | 1 + lib/manager/cargo/readme.md | 1 + lib/manager/cdnurl/readme.md | 2 +- lib/manager/circleci/readme.md | 1 + lib/manager/composer/readme.md | 1 + lib/manager/deps-edn/readme.md | 1 + lib/manager/docker-compose/readme.md | 1 + lib/manager/dockerfile/readme.md | 1 + lib/manager/droneci/readme.md | 1 + lib/manager/git-submodules/readme.md | 1 + lib/manager/gitlabci-include/readme.md | 1 + lib/manager/gitlabci/readme.md | 1 + lib/manager/gradle/readme.md | 1 + lib/manager/helm-requirements/readme.md | 4 +++- lib/manager/helmfile/readme.md | 1 + lib/manager/homebrew/readme.md | 0 lib/manager/html/readme.md | 1 + lib/manager/leiningen/readme.md | 1 + lib/manager/maven/readme.md | 1 + lib/manager/metadata.spec.ts | 24 ++++++++++++++++++++++++ lib/manager/meteor/readme.md | 0 lib/manager/mix/readme.md | 3 +++ lib/manager/nvm/readme.md | 1 + lib/manager/pip_setup/readme.md | 1 + lib/manager/pipenv/readme.md | 1 + lib/manager/poetry/readme.md | 3 +++ lib/manager/pub/readme.md | 1 + lib/manager/ruby-version/readme.md | 1 + lib/manager/travis/readme.md | 1 + 32 files changed, 59 insertions(+), 2 deletions(-) create mode 100644 lib/manager/ansible-galaxy/readme.md create mode 100644 lib/manager/ansible/readme.md create mode 100644 lib/manager/buildkite/readme.md create mode 100644 lib/manager/bundler/readme.md create mode 100644 lib/manager/cargo/readme.md create mode 100644 lib/manager/circleci/readme.md create mode 100644 lib/manager/composer/readme.md create mode 100644 lib/manager/deps-edn/readme.md create mode 100644 lib/manager/docker-compose/readme.md create mode 100644 lib/manager/dockerfile/readme.md create mode 100644 lib/manager/droneci/readme.md create mode 100644 lib/manager/git-submodules/readme.md create mode 100644 lib/manager/gitlabci-include/readme.md create mode 100644 lib/manager/gitlabci/readme.md create mode 100644 lib/manager/gradle/readme.md create mode 100644 lib/manager/helmfile/readme.md create mode 100644 lib/manager/homebrew/readme.md create mode 100644 lib/manager/html/readme.md create mode 100644 lib/manager/leiningen/readme.md create mode 100644 lib/manager/maven/readme.md create mode 100644 lib/manager/metadata.spec.ts create mode 100644 lib/manager/meteor/readme.md create mode 100644 lib/manager/mix/readme.md create mode 100644 lib/manager/nvm/readme.md create mode 100644 lib/manager/pip_setup/readme.md create mode 100644 lib/manager/pipenv/readme.md create mode 100644 lib/manager/poetry/readme.md create mode 100644 lib/manager/pub/readme.md create mode 100644 lib/manager/ruby-version/readme.md create mode 100644 lib/manager/travis/readme.md diff --git a/lib/manager/ansible-galaxy/readme.md b/lib/manager/ansible-galaxy/readme.md new file mode 100644 index 0000000000..dd2426cded --- /dev/null +++ b/lib/manager/ansible-galaxy/readme.md @@ -0,0 +1 @@ +Extracts Ansible Galaxy dependencies from configuration files used by the `ansible-galaxy` CLI tool. diff --git a/lib/manager/ansible/readme.md b/lib/manager/ansible/readme.md new file mode 100644 index 0000000000..4b10e65c89 --- /dev/null +++ b/lib/manager/ansible/readme.md @@ -0,0 +1 @@ +Supports Docker-type dependency extraction from Ansible configuration files. diff --git a/lib/manager/buildkite/readme.md b/lib/manager/buildkite/readme.md new file mode 100644 index 0000000000..a5de9b3ae0 --- /dev/null +++ b/lib/manager/buildkite/readme.md @@ -0,0 +1 @@ +Used for updating Docker dependencies in Buildkite configuration files. diff --git a/lib/manager/bundler/readme.md b/lib/manager/bundler/readme.md new file mode 100644 index 0000000000..8627126cc0 --- /dev/null +++ b/lib/manager/bundler/readme.md @@ -0,0 +1 @@ +The `bundler` manager is used to extract dependencies from `Gemfile` and `Gemfile.lock` files. diff --git a/lib/manager/cargo/readme.md b/lib/manager/cargo/readme.md new file mode 100644 index 0000000000..5b564a57cd --- /dev/null +++ b/lib/manager/cargo/readme.md @@ -0,0 +1 @@ +Extracts dependencies from `Cargo.toml` files, and also updates `Cargo.lock` files too if found. diff --git a/lib/manager/cdnurl/readme.md b/lib/manager/cdnurl/readme.md index bd3a355b54..22ff090b1f 100644 --- a/lib/manager/cdnurl/readme.md +++ b/lib/manager/cdnurl/readme.md @@ -1,4 +1,4 @@ -**Important**: This manager isn't aware of subresource integrity (SRI) hashes. It will search/replace any matching url it finds, without consideration for things such as script integrity hashes. +**Important**: This manager isn't aware of subresource integrity (SRI) hashes. It will search/replace any matching url it finds, without consideration for things such as script integrity hashes. Use the `html` manager instead if you need SRI updating. To enable this manager, add the matching files to `cdnurl.fileMatch`. For example: diff --git a/lib/manager/circleci/readme.md b/lib/manager/circleci/readme.md new file mode 100644 index 0000000000..6465259d70 --- /dev/null +++ b/lib/manager/circleci/readme.md @@ -0,0 +1 @@ +The `circleci` manager extracts both `docker` as well as `orb` datasources from CircleCI config files. diff --git a/lib/manager/composer/readme.md b/lib/manager/composer/readme.md new file mode 100644 index 0000000000..9106ceb611 --- /dev/null +++ b/lib/manager/composer/readme.md @@ -0,0 +1 @@ +Extracts dependencies from `composer.json` files, and keeps the associated `composer.lock` file updated too. diff --git a/lib/manager/deps-edn/readme.md b/lib/manager/deps-edn/readme.md new file mode 100644 index 0000000000..d10ea63ba5 --- /dev/null +++ b/lib/manager/deps-edn/readme.md @@ -0,0 +1 @@ +Extracts Maven dependencies from `deps.edn` files. diff --git a/lib/manager/docker-compose/readme.md b/lib/manager/docker-compose/readme.md new file mode 100644 index 0000000000..5f11e6ab92 --- /dev/null +++ b/lib/manager/docker-compose/readme.md @@ -0,0 +1 @@ +Extracts all Docker images from with Docker Compose YAML files. diff --git a/lib/manager/dockerfile/readme.md b/lib/manager/dockerfile/readme.md new file mode 100644 index 0000000000..0bd5e05073 --- /dev/null +++ b/lib/manager/dockerfile/readme.md @@ -0,0 +1 @@ +Extracts all Docker images in a `Dockerfile`. diff --git a/lib/manager/droneci/readme.md b/lib/manager/droneci/readme.md new file mode 100644 index 0000000000..196ca18946 --- /dev/null +++ b/lib/manager/droneci/readme.md @@ -0,0 +1 @@ +Extracts docker-type dependencies from DroneCI config files. diff --git a/lib/manager/git-submodules/readme.md b/lib/manager/git-submodules/readme.md new file mode 100644 index 0000000000..bbe09c49b2 --- /dev/null +++ b/lib/manager/git-submodules/readme.md @@ -0,0 +1 @@ +Keeps git submodules updated within a repository. diff --git a/lib/manager/gitlabci-include/readme.md b/lib/manager/gitlabci-include/readme.md new file mode 100644 index 0000000000..151b2783d6 --- /dev/null +++ b/lib/manager/gitlabci-include/readme.md @@ -0,0 +1 @@ +Extracts "includes" dependencies from `gitlab-ci.yml` files. diff --git a/lib/manager/gitlabci/readme.md b/lib/manager/gitlabci/readme.md new file mode 100644 index 0000000000..761a024dee --- /dev/null +++ b/lib/manager/gitlabci/readme.md @@ -0,0 +1 @@ +Extracts Docker dependencies from `gitlab-ci.yml` files. diff --git a/lib/manager/gradle/readme.md b/lib/manager/gradle/readme.md new file mode 100644 index 0000000000..dc424e651a --- /dev/null +++ b/lib/manager/gradle/readme.md @@ -0,0 +1 @@ +Renovate extracts Gradle dependencies by calling a custom Gradle script. The Gradle binary is then used to extract Maven-type dependencies. diff --git a/lib/manager/helm-requirements/readme.md b/lib/manager/helm-requirements/readme.md index 26a4ce6ba7..38ba18ec41 100644 --- a/lib/manager/helm-requirements/readme.md +++ b/lib/manager/helm-requirements/readme.md @@ -1 +1,3 @@ -Renovate supports updating Helm Chart references within `requirements.yaml` files. If your Helm charts make use of Aliases then you will need to configure an `aliases` object in your config to tell Renovate where to look for them. +Renovate supports updating Helm Chart references within `requirements.yaml` files. + +If your Helm charts make use of Aliases then you will need to configure an `aliases` object in your config to tell Renovate where to look for them. diff --git a/lib/manager/helmfile/readme.md b/lib/manager/helmfile/readme.md new file mode 100644 index 0000000000..1b3e489485 --- /dev/null +++ b/lib/manager/helmfile/readme.md @@ -0,0 +1 @@ +Checks `helmfile.yml` files and extracts dependencies for the `helm` datasource. diff --git a/lib/manager/homebrew/readme.md b/lib/manager/homebrew/readme.md new file mode 100644 index 0000000000..e69de29bb2 diff --git a/lib/manager/html/readme.md b/lib/manager/html/readme.md new file mode 100644 index 0000000000..f8291240bb --- /dev/null +++ b/lib/manager/html/readme.md @@ -0,0 +1 @@ +The `html` manager extracts scripts and CSS includes pointing to cdnjs. It differs from the `cdnjs` manager in that it detects if an integrity hash is already present and updates it too if found. diff --git a/lib/manager/leiningen/readme.md b/lib/manager/leiningen/readme.md new file mode 100644 index 0000000000..cf9441b92d --- /dev/null +++ b/lib/manager/leiningen/readme.md @@ -0,0 +1 @@ +Extracts Maven-type dependencies. diff --git a/lib/manager/maven/readme.md b/lib/manager/maven/readme.md new file mode 100644 index 0000000000..1a6beadccb --- /dev/null +++ b/lib/manager/maven/readme.md @@ -0,0 +1 @@ +The `maven` manager focuses on extracting dependencies from `pom.xml`. It uses the official Maven versioning scheme. diff --git a/lib/manager/metadata.spec.ts b/lib/manager/metadata.spec.ts new file mode 100644 index 0000000000..e7f6afb62d --- /dev/null +++ b/lib/manager/metadata.spec.ts @@ -0,0 +1,24 @@ +import * as fs from 'fs-extra'; + +describe('manager metadata', () => { + const managerList: string[] = fs + .readdirSync(__dirname, { withFileTypes: true }) + .filter(dirent => dirent.isDirectory()) + .map(dirent => dirent.name) + .filter(name => !name.startsWith('__')) + .sort(); + test.each(managerList)('%s has readme with no h1 or h2', async manager => { + let readme; + try { + readme = await fs.readFile(`${__dirname}/${manager}/readme.md`, 'utf8'); + } catch (err) { + // do nothing + } + expect(readme).toBeDefined(); + expect( + readme + .split('\n') + .some(line => line.startsWith('# ') || line.startsWith('## ')) + ).toBe(false); + }); +}); diff --git a/lib/manager/meteor/readme.md b/lib/manager/meteor/readme.md new file mode 100644 index 0000000000..e69de29bb2 diff --git a/lib/manager/mix/readme.md b/lib/manager/mix/readme.md new file mode 100644 index 0000000000..f63ab44019 --- /dev/null +++ b/lib/manager/mix/readme.md @@ -0,0 +1,3 @@ +The `mix` manager extracts dependencies for the `hex` datasource and uses Renovate's implementation of Hex SemVer to evaluate updates. + +The `mix` package manager itself is also used to keep the lock file up-to-date. diff --git a/lib/manager/nvm/readme.md b/lib/manager/nvm/readme.md new file mode 100644 index 0000000000..6c8891e649 --- /dev/null +++ b/lib/manager/nvm/readme.md @@ -0,0 +1 @@ +Simply keeps the `.nvmrc` file updated. diff --git a/lib/manager/pip_setup/readme.md b/lib/manager/pip_setup/readme.md new file mode 100644 index 0000000000..b3efeec015 --- /dev/null +++ b/lib/manager/pip_setup/readme.md @@ -0,0 +1 @@ +`setup.py` files are parsed by calling out to `python` and then using a mock to detect imported modules. diff --git a/lib/manager/pipenv/readme.md b/lib/manager/pipenv/readme.md new file mode 100644 index 0000000000..18fc18f9e5 --- /dev/null +++ b/lib/manager/pipenv/readme.md @@ -0,0 +1 @@ +`Pipenv.lock` updating is supported. diff --git a/lib/manager/poetry/readme.md b/lib/manager/poetry/readme.md new file mode 100644 index 0000000000..ffaf656ecd --- /dev/null +++ b/lib/manager/poetry/readme.md @@ -0,0 +1,3 @@ +Both Poetry 0.x and 1.x versions are supported. + +Whenever the `pyproject.toml` file is updated, the Poetry lock file will be checked for updates as well. diff --git a/lib/manager/pub/readme.md b/lib/manager/pub/readme.md new file mode 100644 index 0000000000..0c74a49f38 --- /dev/null +++ b/lib/manager/pub/readme.md @@ -0,0 +1 @@ +This manager is used to keep pubspec files up-to-date. diff --git a/lib/manager/ruby-version/readme.md b/lib/manager/ruby-version/readme.md new file mode 100644 index 0000000000..28f43c0cd9 --- /dev/null +++ b/lib/manager/ruby-version/readme.md @@ -0,0 +1 @@ +This will maintain `.ruby-version` files. Available versions will be determined from the official Ruby downloads page. diff --git a/lib/manager/travis/readme.md b/lib/manager/travis/readme.md new file mode 100644 index 0000000000..de7ce41ad1 --- /dev/null +++ b/lib/manager/travis/readme.md @@ -0,0 +1 @@ +This manager is intended to keep Travis config files (`.travis.yml`) up-to-date. Currently it manages only the `node_js` section of files only. -- GitLab