Skip to content

Commit

Permalink
Merge branch 'main' into feat/use-cron-parser
Browse files Browse the repository at this point in the history
  • Loading branch information
secustor committed Jul 10, 2023
2 parents 730bc90 + eef6f17 commit 3ab6edf
Show file tree
Hide file tree
Showing 83 changed files with 2,434 additions and 1,402 deletions.
2 changes: 1 addition & 1 deletion .github/actions/setup-node/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ runs:
}}' >> "$GITHUB_ENV"
- name: Setup Node
uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.0
uses: actions/setup-node@e33196f7422957bea03ed53f6fbb155025ffc7b8 # v3.7.0
with:
node-version: ${{ inputs.node-version }}
cache: ${{ env.CACHE_HIT != 'true' && 'yarn' || '' }}
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -264,7 +264,7 @@ jobs:
os: ${{ runner.os }}

- name: Lint markdown
uses: DavidAnson/markdownlint-cli2-action@bb4bb94c73936643d73d345b48fead3e96f90a5e # v10.0.1
uses: DavidAnson/markdownlint-cli2-action@8f3516061301755c97ff833a8e933f09282cc5b5 # v11.0.0

- name: Lint fenced code blocks
run: yarn -s doc-fence-check
Expand Down Expand Up @@ -502,7 +502,7 @@ jobs:
uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3

- name: Setup Node.js
uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.0
uses: actions/setup-node@e33196f7422957bea03ed53f6fbb155025ffc7b8 # v3.7.0
with:
node-version: ${{ env.NODE_VERSION }}

Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/codeql-analysis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ jobs:
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@004c5de30b6423267685b897a3d595e944f7fed5 # v2.20.2
uses: github/codeql-action/init@46ed16ded91731b2df79a2893d3aea8e9f03b5c4 # v2.20.3
with:
languages: javascript

Expand All @@ -47,7 +47,7 @@ jobs:
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@004c5de30b6423267685b897a3d595e944f7fed5 # v2.20.2
uses: github/codeql-action/autobuild@46ed16ded91731b2df79a2893d3aea8e9f03b5c4 # v2.20.3

# ℹ️ Command-line programs to run using the OS shell.
# 📚 https://git.io/JvXDl
Expand All @@ -61,4 +61,4 @@ jobs:
# make release

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@004c5de30b6423267685b897a3d595e944f7fed5 # v2.20.2
uses: github/codeql-action/analyze@46ed16ded91731b2df79a2893d3aea8e9f03b5c4 # v2.20.3
2 changes: 1 addition & 1 deletion .github/workflows/release-npm.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ jobs:
ref: ${{ env.GIT_SHA }}

- name: Set up Node.js ${{ env.NODE_VERSION }}
uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.0
uses: actions/setup-node@e33196f7422957bea03ed53f6fbb155025ffc7b8 # v3.7.0
with:
node-version: ${{ env.NODE_VERSION }}
cache: yarn
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/update-data.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ jobs:
- uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3

- name: Set up Node.js ${{ env.NODE_VERSION }}
uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.0
uses: actions/setup-node@e33196f7422957bea03ed53f6fbb155025ffc7b8 # v3.7.0
with:
node-version: ${{ env.NODE_VERSION }}
cache: yarn
Expand Down
11 changes: 9 additions & 2 deletions data/debian-distro-info.json
Original file line number Diff line number Diff line change
Expand Up @@ -123,11 +123,18 @@
"v12": {
"codename": "Bookworm",
"series": "bookworm",
"created": "2021-08-14"
"created": "2021-08-14",
"release": "2023-06-10",
"eol": "2026-06-10"
},
"v13": {
"codename": "Trixie",
"series": "trixie",
"created": "2023-08-01"
"created": "2023-06-10"
},
"v14": {
"codename": "Forky",
"series": "forky",
"created": "2025-08-01"
}
}
21 changes: 14 additions & 7 deletions data/ubuntu-distro-info.json
Original file line number Diff line number Diff line change
Expand Up @@ -202,8 +202,8 @@
"series": "bionic",
"created": "2017-10-19",
"release": "2018-04-26",
"eol": "2023-04-26",
"eol_server": "2023-04-26",
"eol": "2023-05-31",
"eol_server": "2023-05-31",
"eol_esm": "2028-04-26"
},
"v18.10": {
Expand Down Expand Up @@ -232,8 +232,8 @@
"series": "focal",
"created": "2019-10-17",
"release": "2020-04-23",
"eol": "2025-04-23",
"eol_server": "2025-04-23",
"eol": "2025-05-29",
"eol_server": "2025-05-29",
"eol_esm": "2030-04-23"
},
"v20.10": {
Expand Down Expand Up @@ -262,8 +262,8 @@
"series": "jammy",
"created": "2021-10-14",
"release": "2022-04-21",
"eol": "2027-04-21",
"eol_server": "2027-04-21",
"eol": "2027-06-01",
"eol_server": "2027-06-01",
"eol_esm": "2032-04-21"
},
"v22.10": {
Expand All @@ -277,7 +277,14 @@
"codename": "Lunar Lobster",
"series": "lunar",
"created": "2022-10-20",
"release": "2023-04-27",
"release": "2023-04-20",
"eol": "2024-01-25"
},
"v23.10": {
"codename": "Mantic Minotaur",
"series": "mantic",
"created": "2023-04-20",
"release": "2023-10-12",
"eol": "2024-07-11"
}
}
1 change: 0 additions & 1 deletion docs/usage/.pages
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,6 @@ nav:
- 'Semantic Commit Messages': 'semantic-commits.md'
- 'Noise Reduction': 'noise-reduction.md'
- Included Presets:
- 'Compatibility Presets': 'presets-compatibility.md'
- 'Default Presets': 'presets-default.md'
- 'Docker Presets': 'presets-docker.md'
- 'Full Config Presets': 'presets-config.md'
Expand Down
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file removed docs/usage/assets/images/dashboard-install.png
Binary file not shown.
Binary file removed docs/usage/assets/images/dashboard-login.png
Binary file not shown.
Binary file removed docs/usage/assets/images/dashboard-settings.png
Binary file not shown.
Binary file removed docs/usage/assets/images/unprotect-master-branch.png
Binary file not shown.
3 changes: 3 additions & 0 deletions docs/usage/configuration-options.md
Original file line number Diff line number Diff line change
Expand Up @@ -2288,6 +2288,9 @@ See also `excludePackagePrefixes`.

Like the earlier `matchPackagePatterns` example, the above will configure `rangeStrategy` to `replace` for any package starting with `angular`.

`matchPackagePrefixes` will match against `packageName` first, and then `depName`, however `depName` matching is deprecated and will be removed in a future major release.
If matching against `depName`, use `matchDepPatterns` instead.

### matchSourceUrlPrefixes

Here's an example of where you use this to group together all packages from the `renovatebot` GitHub org:
Expand Down
2 changes: 1 addition & 1 deletion docs/usage/docker.md
Original file line number Diff line number Diff line change
Expand Up @@ -388,7 +388,7 @@ To get access to the token a custom Renovate Docker image is needed that include
The Dockerfile to create such an image can look like this:

```Dockerfile
FROM renovate/renovate:35.158.0
FROM renovate/renovate:36.6.0
# Include the "Docker tip" which you can find here https://cloud.google.com/sdk/docs/install
# under "Installation" for "Debian/Ubuntu"
RUN ...
Expand Down
6 changes: 4 additions & 2 deletions docs/usage/faq.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,10 +29,12 @@ The Renovate team only fixes bugs in an older version if:
If you're using the hosted app, you don't need to do anything, as the Renovate maintainers update the hosted app regularly.
If you're self hosting Renovate, use the latest release if possible.

## When are new Renovate OSS releases added to the hosted Mend Renovate App?
## When is the Mend Renovate GitHub hosted app updated with new Renovate versions?

The Renovate maintainers manually update the hosted app.
The Renovate maintainers manually update the GitHub hosted app.
The maintainers don't follow any release schedule or release cadence.
This means the hosted app can lag a few hours to a week behind the open source version.
Major releases of Renovate are held back until the maintainers are reasonably certain it works for most users.

## Renovate core features not supported on all platforms

Expand Down
34 changes: 16 additions & 18 deletions docs/usage/getting-started/running.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,39 +35,37 @@ The `renovate` npm package is compatible with all of Renovate's supported platfo
Renovate is also distributed as Docker images on Docker Hub (`renovate/renovate`) and GitHub container registry (`ghcr.io/renovatebot/renovate`).
These Docker images work on all the hosting platforms that Renovate supports.

You must run the Docker images in a `linux/amd64` container.
We're working on `linux/arm64` container support.
Both `linux/amd64` and `linux/arm64` architectures are supported, but you may still find some bugs in the `arm64` image.
You can't run the Docker images in a Windows or macOS container.

In general, you can run Renovate natively on Windows as long as you have all tools it will need (e.g. `npm`, `pipenv`, etc.) preinstalled before you run Renovate.

There are two flavors:
There are two Docker image flavors:

- The `-slim` image
- The default "full" image, this is the image you'll get if you use the `latest` tag
- The default image, which installs required tools at runtime (default for `latest` tag),
- The `-full` image, which comes with latest or very recent versions of every tool pre-installed

##### The slim image
##### The default image (formerly `slim`)

The `-slim` image only comes with the Node.js environment.
By default, the image installs the required tools when needed.
We recommend the `-slim` image for most users.
The default image only comes with the Node.js environment.
Renovate will then install any needed tools when it runs.
Read the `binarySource=install` documentation for more details.
We recommend this default image for most users.

Renovate supports a persistent cache for downloaded tools, so that it only needs to unpack the tools on later runs.
Use the [`containerbaseDir` config option](../self-hosted-configuration.md#containerbasedir) to control where Renovate stores its containerbase cache.

If you want, you can map the Docker socket into the container so that Renovate can dynamically invoke "sidecar" images when needed.
You'll need to set `binarySource=docker` for this to work.
Read the [`binarySource` config option docs](../self-hosted-configuration.md#binarysource) for more information.

##### The default image

The default image comes with most package managers that Renovate supports, but not _all_ package managers.
##### The full image

You must set `binarySource=global`, if you don't then Renovate still installs the latest version of the tools or the requested version from the repository.
The `-full` image comes with most package managers that Renovate supports, but not _all_ package managers.
Update your Docker images regularly to keep the pre-installed tools up-to-date.

Renovate supports a persistent cache for downloaded tools, so that it only needs to unpack the tools on later runs.
Use the [`containerbaseDir` config option](../self-hosted-configuration.md#containerbasedir) to control where Renovate stores its containerbase cache.

The default image is for users who don't want to download or install things at runtime.
The default image has some downsides, because it:
The full image is for users who don't want to download or install things at runtime.
This image has some downsides, because it:

- Comes pre-installed with _one_ version of each language/manager - usually the latest
- Weighs several gigabytes
Expand Down
11 changes: 0 additions & 11 deletions docs/usage/modules/manager/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -82,17 +82,6 @@ To disable a specific manager like `gradle`, do this:
}
```

To disable all managers within a language like `python`, do this:

```json
{
"python": {
"enabled": false
}
}
```

Only languages declared by a Renovate manager are supported.
Please check the [list of supported managers](https://docs.renovatebot.com/modules/manager/#supported-managers).

#### Limiting enabled managers
Expand Down
29 changes: 20 additions & 9 deletions docs/usage/self-hosted-configuration.md
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,8 @@ RENOVATE_AUTODISCOVER_FILTER="/myapp/(readme\.md|src/.*)/"
}
```

The search for repositories is case-insensitive.

**Regex**:

All text inside the start and end `/` will be treated as a regular expression.
Expand Down Expand Up @@ -152,19 +154,22 @@ If the "development branch" is configured but the branch itself does not exist (
## binarySource

Renovate often needs to use third-party tools in its PRs, like `npm` to update `package-lock.json` or `go` to update `go.sum`.
By default, Renovate uses a child process to run such tools, so they must be:

- installed before running Renovate
- available in the path
Renovate supports four possible ways to access those tools:

But you can tell Renovate to use "sidecar" containers for third-party tools by setting `binarySource=docker`.
For this to work, `docker` needs to be installed and the Docker socket available to Renovate.
Now Renovate uses `docker run` to create containers like Node.js or Python to run tools in as-needed.
- `global`: Uses pre-installed tools, e.g. `npm` installed via `npm install -g npm`.
- `install` (default): Downloads and installs tools at runtime if running in a [Containerbase](https://github.com/containerbase/base) environment, otherwise falls back to `global`
- `docker`: Runs tools inside Docker "sidecar" containers using `docker run`.
- `hermit`: Uses the [Hermit](https://github.com/cashapp/hermit) tool installation approach.

Additionally, when Renovate is run inside a container built using [`containerbase`](https://github.com/containerbase), such as the official Renovate images on Docker Hub, then `binarySource=install` can be used.
This mode means that Renovate will dynamically install the desired version of each tool needed.
Starting in v36, Renovate's default Docker image (previously referred to as the "slim" image) uses `binarySource=install` while the "full" Docker image uses `binarySource=global`.
If you are running Renovate in an environment where runtime download and install of tools is not possible then you should use the "full" image.

If all projects are managed by Hermit, you can tell Renovate to use the tool versions specified in each project via Hermit by setting `binarySource=hermit`.
If you are building your own Renovate image, e.g. by installing Renovate using `npm`, then you will need to ensure that all necessary tools are installed globally before running Renovate so that `binarySource=global` will work.

The `binarySource=docker` approach should not be necessary in most cases now and `binarySource=install` is recommended instead.
If you have a use case where you cannot use `binarySource=install` but can use `binarySource=docker` then please share it in a GitHub Discussion so that the maintainers can understand it.
For this to work, `docker` needs to be installed and the Docker socket available to Renovate.

## cacheDir

Expand Down Expand Up @@ -479,6 +484,12 @@ Use the `extends` field instead of this if, for example, you need the ability fo
When Renovate resolves `globalExtends` it does not fully process the configuration.
This means that Renovate does not have the authentication it needs to fetch private things.

## includeMirrors

By default, Renovate does not autodiscover repositories that are mirrors.

Change this setting to `true` to include repositories that are mirrors as Renovate targets.

## logContext

`logContext` is included with each log entry only if `logFormat="json"` - it is not included in the pretty log output.
Expand Down
8 changes: 8 additions & 0 deletions docs/usage/self-hosted-experimental.md
Original file line number Diff line number Diff line change
Expand Up @@ -124,6 +124,14 @@ If set, Renovate will rewrite GitHub Enterprise Server's pagination responses to
!!! note
For the GitHub Enterprise Server platform only.

## `RENOVATE_X_GITLAB_BRANCH_STATUS_DELAY`

Adjust default time (in milliseconds) given to GitLab to create pipelines for a commit pushed by Renovate.

Can be useful for slow-running, self-hosted GitLab instances that don't react fast enough for the default delay to help.

Default value: `1000` (milliseconds).

## `OTEL_EXPORTER_OTLP_ENDPOINT`

If set, Renovate will export OpenTelemetry data to the supplied endpoint.
Expand Down
26 changes: 15 additions & 11 deletions lib/config/__snapshots__/migration.spec.ts.snap
Original file line number Diff line number Diff line change
Expand Up @@ -172,6 +172,21 @@ exports[`config/migration migrateConfig(config, parentConfig) migrates config 1`
},
"onboarding": false,
"packageRules": [
{
"enabled": false,
"matchCategories": [
"python",
],
"matchPackageNames": [
"foo",
],
},
{
"enabled": false,
"matchCategories": [
"dotnet",
],
},
{
"excludePackageNames": "foo",
"groupName": "angular packages",
Expand Down Expand Up @@ -311,17 +326,6 @@ exports[`config/migration migrateConfig(config, parentConfig) migrates more pack
}
`;
exports[`config/migration migrateConfig(config, parentConfig) migrates node to travis 1`] = `
{
"node": {
"automerge": false,
},
"travis": {
"enabled": true,
},
}
`;
exports[`config/migration migrateConfig(config, parentConfig) migrates packageFiles 1`] = `
{
"includePaths": [
Expand Down

0 comments on commit 3ab6edf

Please sign in to comment.