-
Notifications
You must be signed in to change notification settings - Fork 2.9k
Add travis integration #1505
Add travis integration #1505
Conversation
ff1188f
to
d6c8a4b
Compare
👓 @bsimpson63 @spladug @ketralnis Most of the new shell scripts are just copy-paste from the original The sticky points were either around permissions or removing stock packages that travis installs by default. Specifically:
Most importantly: |
Continuous integration for reddit? Did I just see flying bacon? :P |
echo "additional setup already run" | ||
fi | ||
SCRIPT | ||
config.vm.define "default" do |redditlocal| |
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.
note to self: will need to do vagrant up default
to name the VM and ensure that this block runs
Maybe not worth worrying about yet, but how will plugins work with this? |
system_site_packages: true | ||
|
||
services: | ||
- cassandra |
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.
Is it just much faster to include cassandra as a service rather than installing it in travis.sh, even with the downgrade?
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.
Good point. I'll give it a try without this line to see if it can still attach to a by-hand allocated cassandra service. I can't see why it wouldn't.
💅 looks great, just a couple questions |
💇 |
To keep cool URLs in docs etc. could |
# up the build. This will *not* be the same environment as | ||
# travis, but it should be useful for repairing broken tests. | ||
# | ||
# To start your vagrant box simply enter `vagrant up default` from {ROOTDIR}/reddit. |
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.
Does this mean people will have to add "default" every time they want to up a default install? Could that be... defaulted for ergonomics?
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.
On closer reading of the Vagrant docs it looks like yes. [Unfortunately they don't say as much until several sections after they say "Commands that only make sense to target a single machine, such as vagrant ssh, now require the name of the machine to control." which initially threw me.]
🔕 pet peeve: "setup" is a noun not a verb! |
💅 i like splitting up the script, but i think there's still some work to reduce duplication and maintain ergonomics. awesome work getting it to build on travis, loving those green checkmarks! |
39028e9
to
e20cca6
Compare
💇 @spladug I think I addressed everything except 'setup' (though I at least fixed the comments that I added). Do you want me to rename the scripts |
sudo service cassandra start | ||
|
||
# check each port for connectivity | ||
echo "Waiting for cassandra to be available, see source for port meanings..." |
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.
the part about "see source for port meanings" isn't necessary anymore
also no longer "each port"
🐟 lgtm |
🐟 looks great! thanks for all that |
The only way to test travis is to deploy to master with a `.travis.yml` file and wait for travis-ci to pick up the change. To do some pre-testing here, the `Vagrantfile` has been split into two distinct machines: * `default` is, as before, the full reddit build (we have an opportunity to rename this) * `travis` is a minimal install with only the packages and services required to run `nosetests` against the codebase. It tries to mimic what will happen when we try to build this on travis-ci's workers. As part of this addition, I've moved `install-reddit.sh` to `install/reddit.sh` and populated that `install` folder with common scripts used for both `default` and `travis` builds.
0b872f1
to
69698a9
Compare
The only way to test travis is to deploy to master with a
.travis.yml
file and wait for travis-ci to pick up the change. To do some pre-testing here, theVagrantfile
has been split into two distinct machines:default
is, as before, the full reddit build (we have an opportunity to rename this)travis
is a minimal install with only the packages and services required to runnosetests
against the codebase. It tries to mimic what will happen when we try to build this on travis-ci's workers.As part of this addition, I've moved
install-reddit.sh
toinstall/reddit.sh
and populated thatinstall
folder with common scripts used for bothdefault
andtravis
builds.