openwrt / openwrt/asu

Can't get extra repos working

Open
#425 5 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
450
Forks
111
PR merge metrics
No merged PRs in 30d

Description

Hi there, I can't seem to get an instance of ASU to use extra repos. Any help would be appreciated.

I'm running my own ASU server using Docker compose according to the readme instructions (https://github.com/openwrt/asu#docker) on an AWS EC2 instance.

Builds without packages from my extra repo work fine.
Any builds with packages from my extra repo return 422 status and a Unsupported package(s) message.

Here is my modified config file that's in asu-service/:

from pathlib import Path

# disable test and debug features
TESTING = False
#DEBUG = False
DEBUG = True

# where to find the ImageBuildes
UPSTREAM_URL = "https://downloads.openwrt.org"

# where to store created images
STORE_PATH = Path.cwd() / "public/store/"

# where to store ImageBuilders. Do not set when multiple workers run
CACHE_PATH = None

# where to store JSON files
JSON_PATH = Path.cwd() / "public/json/v1/"

MAPPING_ABI = {"libubus20191227": "libubus"}

BRANCHES = {
  "22.03": {
    "name": "22.03",
    "enabled": True,
    "extra_keys": [
      "RWRWaPnVy9z4kIfO6MKRhEHB1KK7i8IoBA0JH9DWvjL93uId2vdUUbAp"
    ],
    "extra_repos": {
      "onion": "http://repo.onioniot.com/omega2/packages/openwrt-21.02.1/onion"
    },
    "git_branch": "openwrt-22.03",
    "branch_off_rev": 19160,
    "path": "releases/{version}",
    "path_packages": "releases/packages-{branch}",
    "pubkey": "RWRNAX5vHtXWFmt+n5di7XX8rTu0w+c8X7Ihv4oCyD6tzsUwmH0A6kO0",
    "release_date": "2022-10-17T00:00:00.000Z",
    "repos": [
      "base",
      "packages",
      "luci",
      "routing",
      "telephony",
      "onion",
    ],
    "snapshot": False,
    "updates": "features",
    "versions": [
      "22.03.2"
    ],
    "package_changes": [
      {
        "source": "kmod-nft-nat6",
        "revision": 19160,
        "mandatory": True
      },
      {
        "source": "firewall",
        "target": "firewall4",
        "revision": 18611
      }
    ]
  }
}

(I originally tried editing asu/branches.yml to add my repo but that didn't work. I also realize the package repo is for version openwrt-21.02.1 but it should still be able to detect the packages, right?)

When I build an image (without any custom packages), I see the request does have my extra_repos:

worker_1     | 21:46:08 Building {'profile': 'onion_omega2p',
...
'extra_repos': {'onion': 'http://repo.onioniot.com/omega2/packages/openwrt-21.02.1/onion'}, 'git_branch': 'openwrt-22.03', 
...
'repos': ['base', 'packages', 'luci', 'routing', 'telephony', 'onion'],
...

But then all builds that include packages from my repo return 422 status and a Unsupported package(s) message.
Any guidance would be appreciated!

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the Docker deployment instructions in the README, the modified configuration in asu-service/, and the original asu/branches.yml entry. Reproduce a build with the shown extra_repos and an extra package, then inspect why it returns 422 Unsupported package(s), including the mismatch between the OpenWrt 22.03 build and the 21.02.1 package repository. Done means the supported configuration or required compatibility change is clear and a custom-package build succeeds.

Written by the indexing model from the issue text.

Assessment

Tech stack
aws, docker, docker-compose, python
Domain
backend, devops
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.