Skip to content

Plan for migrating UBports Installer to GitLab #4246

Description

@peat-psuwit

At the moment, only a few UBports projects remain to be migrated to GitLab. This issue is intended to coordinate migration of ubports-installer, installer-config, and relevant repos (such as promise-android-tools) to GitLab.

ubports-installer and installer-config are more special than other cases in that it depends on GitHub than other repos; both repos use GitHub Actions for CI, and installer-config uses GitHub Pages. More importantly, ubports-installer's code hardcodes installer-config's GitHub Pages URL. This means we have to be more careful in migration.

I propose the following steps:

  1. To facilitate migration from GitHub Pages, first we have to migrate our GitHub Pages to a custom domain. Add, say, installer-config.ubports.com, to installer-config's GitHub Pages custom domain and to our DNS. Then, edit UBports Installer to use installer-config.ubports.com. Cut a release (possibly together with plugins/systemimage: group UT channels by releases based on metarelease #4197).
  2. After that, migrate both repos to GitLab. We already have ubports/installer on GitLab (with a number of projects in it....), so migrate to that. Then, migrate CI to use GitLab CI, and for installer-config to use GitLab Pages. However, don't migrate installer-config.ubports.com to GitLab Pages right away.
  3. After verifying that installer-config's GitLab Pages functions the same as on GitHub Pages, migrate installer-config.ubports.com to GitLab Pages. First, add the domain to GitLab Pages. Then, update (add) only the verification record but not the A/CNAME record. Wait until verification passes and SSL certificate is deployed (seems not possible without A/CNAME record), and then update A/CNAME record.
  4. Optionally, see if it's possible to redirect ubports.github.io/installer-config to installer-config.ubports.com. From a preliminary research, it seems not very easy. If not possible, we should instead make sure ubports.github.io/installer-config returns an error of some sort after some time, to ensure that people will upgrade to receive updated installer configs.

CC: @ubports/installer

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions