-
Notifications
You must be signed in to change notification settings - Fork 57
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
Add new github action to replace travis-ci (includes dependency upgrades) #3195
Conversation
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Worked for me, and I logged in, set up a program, imported all the stuff, teacherreg, and studentreg. I think that's a good enough initial testing run. My one comment is to maybe save a copy of main as "SR 12.5" or something so that we have a workable copy if needed before merging this. Up to you though!
OK, I've made a backup branch named "main-backup" in case we need to go back. |
* Initial docs for stable release 13 * Docs for #3116, #3117, and #3118 * Added docs about django upgrade * Docs for #3128 * Docs for #3129, #3133, #3134, and #3137 * Docs for #3156 and #3153 * Docs for #3174, #3163, and #3184 * Docs for #3139, #3140, and #3141 * Docs for #3143, #3150, #3154, #3160, #3162, and #3168 * Docs for #3171, #3185, #3186, and #3188 * Docs for #3131 and #3189 * Docs for #3149 and #3190 * Docs for #3193, #3194, #3195, #196, and #3197 * Clarification * Docs for #3192, #3201, #3209, and #2248 * Docs for #3204, #3212, #3214, #3205, 9fd073c, and #3226 * Docs for #3232, de5861c, #3231, #3233, #3234, #3237, #3238, and #3239 * Fix indent * Docs for #3227 and #3235 * Add missing word * spelling * Docs for e57581f, #3255, #3253, #3257, and #3249 * Docs for #3254, #3260, and #3262 * Docs for #3263, #3272, #3240, #3264, #3266, and #3270 * clarifications * Docs for #3283 and #3252 * Docs for #3288 and misc commits * Docs for #3292, #3311, #3286, #3289, and #3279 * Docs for a377f0d; move note * Docs for #3315, #3290, and #3322 * Docs for #3273 and #3317 * Final edits
Travis-CI no longer offers unlimited testing for open source projects, so we need to migrate to Github Actions. Github Actions only supports Ubuntu 16+, and since @milescalabresi is moving us to Ubuntu 20 on AWS, I decided to go with that, which then required updates to node.js (v.0.10.x to v.14.x LTS), less (v.1.3.1 to v.1.7.5), and Bootstrap (v.2.0.2 to v.2.3.2). For the Bootstrap update, I merged all of our custom changes and did a quick glance at a few pages to make sure everything looked ok. The node.js and less upgrades shouldn't cause any notable/visible changes.
Everything runs smoothly on Github Actions (including all tests passing, woo!). Everything also runs smoothly on my dev server which is also on Ubuntu 20 (see notes below and new upgrade instructions in vagrant.rst). Following this, all developers will need to migrate to new vms.
Given all of these changes, it should be noted that it's very possible (and almost 100% likely) that main will never work again on the current production server (including dev3). Of course, cherry picks should still work for individual chapters, but the entire development branch will probably not work.
In terms of the LGTM and CodeQL alerts, they all have to do with Bootstrap, so I say we just ignore those.
Notes on how I created the new dev VM (I ran into numerous issues trying to update our old dev VM):
config.vm.box
tobento/ubuntu-20.04
in your Vagrantfile)Once you've got the VM running, you'll then need to modify the partition scheme such that there is an unmounted partition named
keep_1
within thevgvagrant
volume group. However, by default, theroot
partition in this volume group takes up the full space, so we'll need to shrink it. Unfortunately, we'll need to unmount thisroot
partition and can only do that if we are running the server from the Ubuntu install CD.ubuntu
with no password).systemd.unit=multi-user.target
. Then hit the enter key. (https://askubuntu.com/a/943701/1174698)root
partition (you shouldn't need to do thevgchange
line). I used-10G
forlvreduce
to shrink the partition by 10 GB.sudo lvcreate -l 100%FREE -n keep_1 vgvagrant
(https://www.digitalocean.com/community/tutorials/how-to-use-lvm-to-manage-storage-devices-on-ubuntu-18-04#creating-a-logical-volume-from-all-remaining-free-space).update_deps.sh
to update your dependencies.vagrant package
(this is back in your own file system). You're done!Fixes #2144 and fixes #2560.