Issue 63861
Summary [infrastructure] Automate releases.llvm.org
Labels infrastructure
Assignees
Reporter tru
    After some ad-hoc discussions with @tstellar and @asl in various places, I wanted to summarize the current questions and the path forward in an issue since I think we should automate this part of the release process asap.

## Current process
* Currently, we have the llvm/www-release repo where we change a js and add the docs to the subdir, commit, and push
* This, unfortunately, doesn't update the actual page. You then have to ssh into the machine and pull. This might fail because of permissions.
* A license file also needs to be copied to the right place and is often forgotten. See #57672

This is a suboptimal process that usually fails because of permissions or because we forget to update stuff.

## Suggestions

### Automatic deploys

* The lowest hanging fruit is to deploy from the repo to the server via rsync automatically. There is a rsync plugin for GitHub actions already available. https://github.com/marketplace/actions/action-rsync. This needs someone to help setup the ssh keys for an automated deploy. I don't have enough access on the CDN/www machine to help with this.

This would fix the permission problem.

### Autogenerated page

* As part of a PoC I converted the page to Hugo here: https://github.com/tru/releases.llvm.org, which means that the release pages would be autogenerated and no more editing html/js files.
* This is almost done but requires some fixes to be really deployable:
** The current DIRECTORY (not in the repo) contains OLD binaries from very old releases. These shouldn't be added to a Git repo since they are big. My suggestion would be to have a new webpage/subpage where we can place these statically and just refer from the Hugo pages since they will no longer be updated. I would again need help to set this up since I don't have access to that part of the infrastructure.
** documentation should also not be checked-in to the repo, really. We should have a similar way to handle those, `docs.llvm.org/<version>/index.html` or similar.

## TLDR

I am happy to help getting both the auto-deploy and the hugo generated pages working as long as I can get someone to commit to help me with the infrastructure parts that we need and I can't do, these items are:

* SSH key for deploying from github actions to a (preferably) new directory on the www server that's only writeable from this new service user.
* New directories for docs and old binaries that can be referenced from the page
* When everything works someone needs to repoint releases.llvm.org to the new directory.

Thoughts @tstellar @asl?

_______________________________________________
llvm-bugs mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to