Skip to content

hown3d/renovate-apk-indexer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Renovate APK Index Server

This project aims to create a http server for renovate to query apk packages of the wolfi project.

Usage

For every release a container image is built and stored in the github container registry: docker run -p 3000:3000 ghcr.io/hown3d/renovate-apk-indexer

$ renovate-apk-indexer -help
Usage of renovate-apk-indexer:
  -apk-index-url string
        comma-separated URLs of the apk indexes to get the package information from (default "https://packages.wolfi.dev/os/x86_64/APKINDEX.tar.gz")
  -log-level value
        log level (default INFO)
  -log-output string
        representation for logs (text,json) (default "text")
  -update-interval int
        update interval of the apk package index in hours (default 4)

You can also specify multiple comma seperate indexes for distributions with multiple repositories:

$ renovate-apk-indexer -apk-index-url=https://dl-cdn.alpinelinux.org/edge/main/aarch64/APKINDEX.tar.gz,https://dl-cdn.alpinelinux.org/edge/community/aarch64/APKINDEX.tar.gz,https://dl-cdn.alpinelinux.org/edge/testing/aarch64/APKINDEX.tar.gz

Renovate Gitlab example

Renovate gitlab-job (abbreviated):

renovate:
  services:
    - name: ghcr.io/hown3d/renovate-apk-indexer:v0.1.0
      alias: wolfi-apk
  script:
    - renovate

Use it in your renovate.json as a custom datasource:

{
  "$schema": "https://docs.renovatebot.com/renovate-schema.json",
  "customDatasources": {
    "wolfi": {
      "defaultRegistryUrlTemplate": "http://wolfi-apk:3000/{{packageName}}"
    }
  }
}

Usage in code:

# renovate: datasource=custom.wolfi depName=argo-cd
VERSION=2.13.1-r0
apk update && apk add argo-cd=$VERSION

Renovate should now be able to detect updates for the specified dependency.

API

The server provides an endpoint for /<PACKAGE_NAME>, which returns the package information of <PACKAGE_NAME> in the format that renovate custom datasources expects

APK Index updates

By default, the server updates it's packages every 4 hours.

Healthchecks

Liveness and Readiness probe endpoints are available at /livez and /readyz.

About

APK custom datasource HTTP server for renovate

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors 4

  •  
  •  
  •  
  •  

Languages