Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Deploy CPAN and BackPAN mirrors are part of the backend deployment #32

Open
preaction opened this issue Jun 9, 2018 · 0 comments
Open

Comments

@preaction
Copy link
Member

The backend requires direct filesystem access to a CPAN and BackPAN repository in order to function: As part of creating the uploads table, the CPAN directory is scanned for new distributions and any new data is added to the uploads table in the database.

Since this mirror is required by the backend, we should deploy it and its corresponding daemons as part of the backend deploy. This includes:

  • Installing the rrr-client distribution
  • Starting the rrr-client with a runit service file
    • This is presently started by /media/web/pause/pause-run.sh which maintains /media/web/pause/pause.sh and restarts it when needed.
    • If we use a runit service file, we only need what's in /media/web/pause/pause.sh
    • Barbie's process controller also manages memory size, so if rrr-client needs that, we'll likely have to find an runit-style memory watchdog
  • Deploy and configure the BackPAN cron job
    • This job is currently located at /media/web/pause/backpan.sh but it will need to be moved into this repository
    • This should be run once an hour

The configuration for rrr-client requires a password, so we will need a secure way to enter that data which is not tracked by any git repository. The password is currently in /media/web/pause/pause.sh.

The CPAN and BackPAN directories should be easily configurable in the Rexfile.

(Copied from cpan-testers/cpantesters-backend#4)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant