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

Add FreeBSD Travis #505

Merged
merged 10 commits into from
Aug 22, 2017
Merged

Add FreeBSD Travis #505

merged 10 commits into from
Aug 22, 2017

Conversation

nurupo
Copy link
Member

@nurupo nurupo commented Mar 8, 2017

Just experimenting running FreeBSD in qemu and sshing into it.

This PR is not finished and is not ready for review yet.


This change is Reviewable

@nurupo nurupo force-pushed the travis-freebsd branch 30 times, most recently from 17162cc to 0b979d9 Compare March 11, 2017 03:51
@nurupo
Copy link
Member Author

nurupo commented Aug 4, 2017

I could give a little refactor to the bash script, I sometimes specify flags after arguments, which is not the correct order, but then I'm not sure which commit I would have to squash that change into, and it would probably conflict with other commits I have. I could make it as a separate commit, I guess.

@thierry-FreeBSD
Copy link

@nurupo : the FreeBSD port is lagging to release 0.1.8, 0.1.9 is not portable enough and would require too much patches.

@robinlinden
Copy link
Member

:lgtm_strong:


Reviewed 2 of 5 files at r1, 1 of 1 files at r4, 3 of 3 files at r5, 4 of 4 files at r6.
Review status: all files reviewed at latest revision, all discussions resolved, some commit checks failed.


Comments from Reviewable

@robinlinden robinlinden modified the milestones: v0.1.11, v0.1.10 Aug 5, 2017
@nurupo
Copy link
Member Author

nurupo commented Aug 6, 2017

@thierry-FreeBSD do you patch 0.1.7 in order to make it work or does it work out of the box? Would be interesting to see the patches if you do patch it.

@thierry-FreeBSD
Copy link

@nurupo : no patches ATM. When I commit patches to the ports tree, they are viewable from
https://svnweb.freebsd.org/ports/head/net-im/tox/files/

@nurupo nurupo mentioned this pull request Aug 15, 2017
@nurupo
Copy link
Member Author

nurupo commented Aug 16, 2017

@iphydf any day now

@jhert0
Copy link
Member

jhert0 commented Aug 19, 2017

:lgtm_strong:


Reviewed 2 of 5 files at r1, 3 of 3 files at r5, 3 of 4 files at r6, 2 of 2 files at r7.
Review status: all files reviewed at latest revision, all discussions resolved, some commit checks failed.


Comments from Reviewable

Copy link
Member

@iphydf iphydf left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM besides the typo corrections.

# is read from the screen's log file. Note that for some reason you can't send
# long input lines on Travis (it works just fine when I do it on my machine...),
# but that limitation is not an issue, as we don't really need to send long
# lines of input anyway. Also, note that sice we run qemu in curses mode, the
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

s/sice/since

# network, install and configure the ssh server, and update the system. After
# this initial setup, ssh is used to communicate with the FreeBSD running in the
# VM, which is a lot friendlier way of communication. Please note that Travis
# doesn't seem to allow KVM passthreough, so qemu has to emulate all the
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

passthrough

# doesn't seem to allow KVM passthreough, so qemu has to emulate all the
# hardware, which makes it quite slow compared to the host machine. We cache
# the qemu image since it takes a long time to run the initial system and
# pacakge updates, and we do incremental system and package updates on every
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

package

# Wait for the password prompt
wait_for "Changing local password for root"

# Reset password to empty for the paswordless ssh to work
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

passwordless

done
}

# Starts VM and waits until its fully running (until a login prompt is shown)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it's

{
rm -f screenlog.0

# Start emulator. 2000mb RAM should be enough, right? The build machine has over 7gb.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is great, and it's very good to know how much RAM we're using during the build. If this increases beyond the 2G in the VM, we may be doing something dodgy.

wait_for "FreeBSD/amd64 ("
}

# Shutdowns VM and waits until its process finishes
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"Shuts down" or "Shuts VM down"

# string after the command is executed and then checking if it was printed.
execute_shell_and_wait()
{
# $RANDOM is a bash built-in, so we try to avoid name collosion here by using ugly RANDOM_STR name
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

collision

@nurupo
Copy link
Member Author

nurupo commented Aug 22, 2017

Fixed typos.

@robinlinden
Copy link
Member

Reviewed 2 of 2 files at r7, 1 of 1 files at r8.
Review status: all files reviewed at latest revision, 8 unresolved discussions, some commit checks pending.


Comments from Reviewable

@robinlinden robinlinden merged commit 8f19c92 into TokTok:master Aug 22, 2017
@CLAassistant
Copy link

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

This pull request was closed.
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

Successfully merging this pull request may close these issues.

9 participants