Provisioning production fails : no "Release file"

The way I managed to solve this was replacing http://nyc2.mirrors.digitalocean.com/mariadb/repo/10.5/ubuntu with https://mirror.mva-n.net/mariadb/repo/10.5/ubuntu in trellis/roles/mariadb/defaults/main.yml.

It shouldn’t be considered a long-term solution, but at least it did the trick for the time being.

Same issue. I used http://ftp.osuosl.org/pub/mariadb/repo/10.5/ubuntu, which was used before: Add MariaDB 10.2 PPA · roots/trellis@9d1bdad · GitHub

1 Like

I tried changing the URL but the provision keeps calling the DigitalOcean link.

It seems like the mirror is cached somewhere, change it to any of the proposed mirrors won’t resolve the error for me.

This worked for me:

Change the url:

SSH into the guest machine:

$ trellis ssh development

In the guest machine:

List of all repositories (just to check)

$ grep ^ /etc/apt/sources.list /etc/apt/sources.list.d/*

Go to directory:
$ cd /etc/apt/sources.list.d

Delete the file:
$ sudo rm nyc2_mirrors_digitalocean_com_mariadb_repo_10_5_ubuntu.list

From host machine (trellis folder):
$ vagrant provision

4 Likes

apt-get update should generally clear the sources cache.

Now I’m wondering if we should move from Digitalocean as the default mirror though. I think this is the second time they’ve had issues.

We’ve released a new version of Trellis to address this by changing the mirror of the MariaDB repo: Release v1.9.1 · roots/trellis · GitHub

3 Likes

Just encountered this issue.

The PR fixes the apt source, however, running the playbook will still terminate with an ansible error as apt is apparently updated first (task Update apt packages somewhere before task Add MariaDB PPA that fixes the apt source).

Does reprovisioning fix the issue directly on an existing Trellis system?
I had to manually remove the sources and then reprovision, as an apt upate caused ansible to fail before changing the source.

This topic was automatically closed after 42 days. New replies are no longer allowed.

I’m not sure if this is a temporary hiccup or not, but this issue resurfaced for me this evening. I was able to get things running by using the Rackspace mirror:

https://mirror.rackspace.com/mariadb/repo/10.5/ubuntu

See 🔧 Change MariaDB PPA mirror to Rackspace by retlehs · Pull Request #1422 · roots/trellis · GitHub

3 Likes

Same issue here, so will roll with the solution you’ve given, thanks :slight_smile:

I’m having the same issue and the given fix (changing MariaDB mirror to Rackspace and removing the old “.list” file) has worked for me.

But since my mariadb_ppa link looks like this “http://nyc2.mirrors.digitalocean.com/mariadb/repo/10.2/ubuntu” and the fix suggests to use “Index of /mariadb/repo/10.5/ubuntu” I was wondering if the version mismatch in the links (“repo/10.2” and “repo/10.5”) could cause any future troubles?

Thanks in advance and also thanks a lot for the fix!

It could, but you can update the mirror domain while keeping the version number the same.

picking up on @kim_pp post here, I’m now getting an error on vagrant up … we were currently using this mirror:
http://nyc2.mirrors.digitalocean.com/mariadb/repo/10.2/ubuntu

I changed it to:
http://mirrors.gigenet.com/mariadb/repo/10.5/ubuntu

did vagrant destroy and then vagrant up

Now I’m getting a new error:

TASK [composer : Install configured globally-required packages.] ***************
System info:
  Ansible 2.7.5; Vagrant 2.2.5; Darwin
  Trellis Head
---------------------------------------------------
non-zero return code
Changed current directory to /root/.composer
Do not run Composer as root/super user! See https://getcomposer.org/root for
details
./composer.json has been created
Running composer update hirak/prestissimo
Loading composer repositories with package information
Info from https://repo.packagist.org: #StandWithUkraine
Updating dependencies
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - hirak/prestissimo[0.1.1, ..., 0.3.1] require ext-curl * -> it is
missing from your system. Install or enable PHP's curl extension.
    - hirak/prestissimo[0.3.2, ..., 0.3.10] require php ^5.3.2 || ^7.0 ->
your php version (8.1.11) does not satisfy that requirement.
    - Root composer.json requires hirak/prestissimo @stable -> satisfiable by
hirak/prestissimo[0.1.1, ..., 0.3.10].

To enable extensions, verify that they are enabled in your .ini files:
    - /etc/php/8.1/cli/php.ini
    - /etc/php/8.1/cli/conf.d/10-opcache.ini
    - /etc/php/8.1/cli/conf.d/10-pdo.ini
    - /etc/php/8.1/cli/conf.d/15-xml.ini
    - /etc/php/8.1/cli/conf.d/20-calendar.ini
    - /etc/php/8.1/cli/conf.d/20-ctype.ini
    - /etc/php/8.1/cli/conf.d/20-dom.ini
    - /etc/php/8.1/cli/conf.d/20-exif.ini
    - /etc/php/8.1/cli/conf.d/20-ffi.ini
    - /etc/php/8.1/cli/conf.d/20-fileinfo.ini
    - /etc/php/8.1/cli/conf.d/20-ftp.ini
    - /etc/php/8.1/cli/conf.d/20-gettext.ini
    - /etc/php/8.1/cli/conf.d/20-iconv.ini
    - /etc/php/8.1/cli/conf.d/20-igbinary.ini
    - /etc/php/8.1/cli/conf.d/20-msgpack.ini
    - /etc/php/8.1/cli/conf.d/20-phar.ini
    - /etc/php/8.1/cli/conf.d/20-posix.ini
    - /etc/php/8.1/cli/conf.d/20-readline.ini
    - /etc/php/8.1/cli/conf.d/20-shmop.ini
    - /etc/php/8.1/cli/conf.d/20-simplexml.ini
    - /etc/php/8.1/cli/conf.d/20-sockets.ini
    - /etc/php/8.1/cli/conf.d/20-sysvmsg.ini
    - /etc/php/8.1/cli/conf.d/20-sysvsem.ini
    - /etc/php/8.1/cli/conf.d/20-sysvshm.ini
    - /etc/php/8.1/cli/conf.d/20-tokenizer.ini
    - /etc/php/8.1/cli/conf.d/20-xdebug.ini
    - /etc/php/8.1/cli/conf.d/20-xmlreader.ini
    - /etc/php/8.1/cli/conf.d/20-xmlwriter.ini
    - /etc/php/8.1/cli/conf.d/20-xsl.ini
    - /etc/php/8.1/cli/conf.d/25-memcached.ini
You can also run `php --ini` in a terminal to see which files are used by PHP
in CLI mode.
Alternatively, you can run Composer with `--ignore-platform-req=ext-curl` to
temporarily ignore these required extensions.

Installation failed, deleting ./composer.json.
failed: [default] (item={u'name': u'hirak/prestissimo'}) => {"changed": true, "cmd": ["/usr/local/bin/composer", "global", "require", "hirak/prestissimo:@stable", "--no-progress"], "delta": "0:00:00.554042", "end": "2022-10-14 05:35:29.305421", "item": {"name": "hirak/prestissimo"}, "rc": 2, "start": "2022-10-14 05:35:28.751379", "stderr_lines": ["Changed current directory to /root/.composer", "Do not run Composer as root/super user! See https://getcomposer.org/root for details", "./composer.json has been created", "Running composer update hirak/prestissimo", "Loading composer repositories with package information", "Info from https://repo.packagist.org: #StandWithUkraine", "Updating dependencies", "Your requirements could not be resolved to an installable set of packages.", "", "  Problem 1", "    - hirak/prestissimo[0.1.1, ..., 0.3.1] require ext-curl * -> it is missing from your system. Install or enable PHP's curl extension.", "    - hirak/prestissimo[0.3.2, ..., 0.3.10] require php ^5.3.2 || ^7.0 -> your php version (8.1.11) does not satisfy that requirement.", "    - Root composer.json requires hirak/prestissimo @stable -> satisfiable by hirak/prestissimo[0.1.1, ..., 0.3.10].", "", "To enable extensions, verify that they are enabled in your .ini files:", "    - /etc/php/8.1/cli/php.ini", "    - /etc/php/8.1/cli/conf.d/10-opcache.ini", "    - /etc/php/8.1/cli/conf.d/10-pdo.ini", "    - /etc/php/8.1/cli/conf.d/15-xml.ini", "    - /etc/php/8.1/cli/conf.d/20-calendar.ini", "    - /etc/php/8.1/cli/conf.d/20-ctype.ini", "    - /etc/php/8.1/cli/conf.d/20-dom.ini", "    - /etc/php/8.1/cli/conf.d/20-exif.ini", "    - /etc/php/8.1/cli/conf.d/20-ffi.ini", "    - /etc/php/8.1/cli/conf.d/20-fileinfo.ini", "    - /etc/php/8.1/cli/conf.d/20-ftp.ini", "    - /etc/php/8.1/cli/conf.d/20-gettext.ini", "    - /etc/php/8.1/cli/conf.d/20-iconv.ini", "    - /etc/php/8.1/cli/conf.d/20-igbinary.ini", "    - /etc/php/8.1/cli/conf.d/20-msgpack.ini", "    - /etc/php/8.1/cli/conf.d/20-phar.ini", "    - /etc/php/8.1/cli/conf.d/20-posix.ini", "    - /etc/php/8.1/cli/conf.d/20-readline.ini", "    - /etc/php/8.1/cli/conf.d/20-shmop.ini", "    - /etc/php/8.1/cli/conf.d/20-simplexml.ini", "    - /etc/php/8.1/cli/conf.d/20-sockets.ini", "    - /etc/php/8.1/cli/conf.d/20-sysvmsg.ini", "    - /etc/php/8.1/cli/conf.d/20-sysvsem.ini", "    - /etc/php/8.1/cli/conf.d/20-sysvshm.ini", "    - /etc/php/8.1/cli/conf.d/20-tokenizer.ini", "    - /etc/php/8.1/cli/conf.d/20-xdebug.ini", "    - /etc/php/8.1/cli/conf.d/20-xmlreader.ini", "    - /etc/php/8.1/cli/conf.d/20-xmlwriter.ini", "    - /etc/php/8.1/cli/conf.d/20-xsl.ini", "    - /etc/php/8.1/cli/conf.d/25-memcached.ini", "You can also run `php --ini` in a terminal to see which files are used by PHP in CLI mode.", "Alternatively, you can run Composer with `--ignore-platform-req=ext-curl` to temporarily ignore these required extensions.", "", "Installation failed, deleting ./composer.json."], "stdout": "", "stdout_lines": []}

I looked for a mirror with mariadb 10.2 for ubuntu 18.04, but there is none … lowest version is 10.3, there is no older one.

any advice?

That error says you’re missing PHP’s curl extension… It doesn’t seem related to MariaDB?

require ext-curl * -> it is
missing from your system. Install or enable PHP's curl extension.

I’d suggest opening a new topic if you’re having trouble with that specifically.

FWIW, prestissimo has not been necessary since Composer v2 was released. I would get rid of that from your project.

1 Like

I think this applies to this thread?

I was trying to provision a new digital ocean droplet using a completely new trellis build.

I’m using the latest versions of trellis-cli, trellis, and bedrock

TASK [mariadb : Add MariaDB PPA] ***********************************************
fatal: [157.230.202.54]: FAILED! => {"changed": false, "msg": "Failed to update apt cache: E:The repository 'https://mirror.rackspace.com/mariadb/repo/10.6/ubuntu kinetic Release' does not have a Release file."}

See Error when trying to provision a production server - #5 by swalkinshaw