Adventures in tinderbox


For those that don't know anything about FreeBSD it is an operating system that traces it's heritage back to the original unix development at AT&T starting in 1970. FreeBSD uses what is called ports to build a whole range of software that you can use. If you know linux and say well we just use yum to install binary programs, that's fine, ports is the structure holding up the FreeBSD equivalent, which is called packages. So you get two options, 1. use a port to compile the software yourself or 2. have a pre-built binary package installed. The port needs to be setup and working before you can get a binary package to install.

Being in the process of helping fix issues related to getting programs to compile within the FreeBSD ports system I have gone and setup tinderbox on my machine. Basically tinderbox allows you to setup virtual systems to test the build process of the port you are working on. This means you can test that the port builds on any number of FreeBSD versions, which is a good starting point to allowing others to use it. Yeah, I said a good starting point, someone will find that it won't work on their machine while program x is installed. But hey that's one of the joys of programming. ;-)

Anyway to the point of this post - setting up tinderbox. While there is some decent documentation it doesn't fully cover all features, maybe these are the newer features. Anyway this is the first of a series of posts that cover my exploration into setting up tinderbox my way.

Tinderbox uses some terms a little different than you may expect so lets start with the first building block - a tinderbox jail. Within tinderbox a jail is a copy of a FreeBSD install of a particular version, that is what you get when you run make buildworld installworld from /usr/src. The idea is you have a few of these jails setup, I will use 10-CURRENT and 9-STABLE as examples here. One area here that isn't covered in the docs is using subversion to get your source files, so that is what I will use. The main FreeBSD development changed to using svn several years ago now but with them keeping the cvs repo mirrored to the svn updates there doesn't appear to be much info on using svn yet. This wiki page seems to be the best info available.

So to get started install tinderbox - from ports of course.

cd /usr/ports/ports-mgmt/tinderbox make install clean

Before install you can run make config to change a few options - personally I swapped mysql with PostgreSQL and csup with cvsup, which I didn't end up using. Installing will put all the scripts in /usr/local/tinderbox/scripts and I will assume that is where your setup is. Beside the scripts dir you will also find several other empty dirs at this point, I'll mention them as we get to the relevant parts.

I won't go into the setup step here as what you need to know is in the docs (tinderbox/scripts/README) basically create the database to be used and save a few options into config files.

Then you stat by creating some jails, you obviously need to give it some info for that.

usage: tc createJail -j <jailname> -u CSUP|CVSUP|LFTP|SVN|USER|NONE [-t <tag>] [-d <description>] [-C] [-P <protocol>] [-H <updatehost>] [-D <updatehostdirectory>] [-m <mountsrc>] [-I] [-a <arch>]

Jailname sounds obvious - the catch is it must start with the main system version number so 10-CURRENT not FREEBSD-10, -u will be SVN and can be left out if you setup SVN as your default, protocol will be svn (this may also be http or svn+ssh but you'll need a login account for ssh access to the official repo), update host will be svn.freebsd.org unless you get fancy and run your own mirror, updatehostdirectory is the svn path to get to what you want. So for a jail based on the current head development we get

cd /usr/local/tinderbox/scripts ./tc createJail -j 10-CURRENT -P svn -H svn.freebsd.org -D base/head -d "FreeBSD 10-CURRENT tinderbox jail"

And for 9-STABLE we get

cd /usr/local/tinderbox/scripts ./tc createJail -j 9-STABLE -P svn -H svn.freebsd.org -D base/stable/9 -d "FreeBSD 9-STABLE tinderbox jail"

So you may notice that the FreeBSD svn setup is a little different than you might expect - they don't use tags or branches the way you expect. Instead the path defines the release tag as such. So you can see that you get 9-stable from base/stable/9 you can also get 9.0-release from base/releng/9.0 or 5.2.1 from base/release/5.2.1 (yes 5.2.1 was the last minor release update) If you want to know the difference between RELEASE and RELENG then read this page. I would say current along with 8 and 9 stable would be sufficient but some may want to add other main releases to their testing list and may need them to find a regression between updates.

At this stage you will find that within /usr/local/tinderbox/jails a folder is created that contains the source and build files for each jail you create. When it is finished there will be a nice tarball of the jails world setup. If you mess around and want to start again then run ./tc rmJail -j my-messed-up-jail (from within tinderbox/scripts) and then remove it's folder within jails. rmJail removes the info from your database but leaves the jail files in place for you - I think there should probably be an option to delete all the files along with the jail definition, note for a suggestion or patch.

Some other options for -D that may interest you are -

base/head base/stable/9 base/releng/9.0 base/stable/8 base/releng/8.2 base/releng/8.1 base/releng/8.0 base/stable/7 base/releng/7.4 base/releng/7.3 base/releng/7.2 base/releng/7.1 base/releng/7.0

Well building the jails will take a few hours, so stay tuned for the next exciting episode.


1068 comments

Lee Trotman's picture

Howdy! I could have sworn I've been to this website before but after
going through many of the posts I realized it's new to me. Regardless, I'm
certainly happy I found it and I'll be bookmarking it
and checking back often!

Clash of Clans hack gratuit's picture

Les gens spectaculaires verifier serve un guerre de ouvrage des clans
de piratage encore cette hacks ont enroule au regard de une big
dure a decouvrir.

how to use instagram for android phones's picture

hey there and thank you for your information - I've
definitely picked up anything new from right here. I did however expertise a few technical issues using this site, as I experienced to reload the
website lots of times previous to I could get it to load correctly.
I had been wondering if your hosting is OK? Not that I'm complaining, but slow loading instances times will sometimes affect your placement in google and can damage your high-quality
score if advertising and marketing with Adwords. Anyway I'm adding this RSS to my e-mail
and can look out for a lot more of your respective interesting content.
Make sure you update this again very soon.

michele frazier's picture

Heya i'm for the first time here. I found this board and I in finding It truly useful &
it helped me out a lot. I hope to offer one thing again and help others
like you aided me.

Home For Life's picture

Very nice post. I just stumbled upon your weblog and wanted to
say that I have really enjoyed browsing your blog posts.
After all I'll be subscribing to your feed and I hope you write again very soon!

Ulib.derby.ac.uk's picture

This website was... how do I say it? Relevant!! Finally I have found something which helped me.

Appreciate it!

adderin brain health's picture

Greetings from Colorado! I'm bored to tears at work so
I decided to browse your blog on my iphone during lunch break.
I really like the info you provide here and can't wait
to take a look when I get home. I'm shocked at how fast your blog loaded on my cell phone
.. I'm not even using WIFI, just 3G .. Anyhow,
great site!

obat cialis's picture

hello!,I love your writing very much! share we keep up a correspondence extra about your post
on AOL? I need a specialist on this house to solve my problem.
Maybe that is you! Having a look forward to look you.

Oxytokin Cream's picture

What's up everybody, here every person is sharing these know-how,
so it's pleasant to read this webpage, and I used to visit this web site everyday.

custom screen printing's picture

Nice blog! Is your theme custom made or did you download it from somewhere?
A design like yours with a few simple tweeks would really make my blog stand
out. Please let me know where you got your theme.
Thanks a lot

Jim's picture

Beware of a girl who doesn't like hanging out with people
of the same sex. Many sexual predators choose to use online dating sites as a tool for their perversions.

Your address, email, phone number etc should not be relinquished unless you are completely
confident that the person has genuine dating interests.

Best Vitamins For Skin's picture

Greetings! Very helpful advice in this particular article!

It is the little changes that make the largest changes.
Thanks a lot for sharing!

pohlschroeder's picture

I'm excited to find this site. I wanted to thank you for
ones time for this particularly wonderful read!! I definitely loved every bit of it and i also have you saved as a favorite to see new things on your site.

porno's picture

Why people still make use of to read news papers when in this technological
globe all is available on web?

resvibrant serum reviews's picture

Nice answers in return of this difficulty with firm arguments and
explaining the whole thing regarding that.

renew cleanse's picture

I think the admin of this web page is truly
working hard for his web site, for the reason that
here every stuff is quality based data.

asdf's picture

Very descriptive article, I enjoyed that bit. Will there be a part
2?

obat pembesar payudara's picture

Hello to all, how is everything, I think every one is
getting more from this site, and your views are pleasant designed for new users.

remedios caseros para quitar las quemaduras del sol en la 's picture

Quality posts is the key to invite the viewers to pay a quick visit the
web site, that's what this web site is providing.

Home For Life Animal Sanctuary's picture

Excellent way of explaining, and fastidious post to take information on the
topic of my presentation topic, which i am going to convey in academy.

porno's picture

Pretty element of content. I just stumbled upon your website and in accession capital to
claim that I get in fact loved account your blog posts.
Any way I'll be subscribing to your feeds and even I fulfillment you get admission to persistently quickly.

Adderin's picture

Very nice post. I just stumbled upon your weblog and wanted
to say that I've really enjoyed browsing your blog posts.
After all I'll be subscribing to your feed and I hope you
write again very soon!

Linking Online Cash Reviews's picture

This page definitely has all the information I wanted about this
subject and didn't know who to ask.

Yalmeh Reviews's picture

You are so awesome! I do not think I've truly read anything like that before.
So wonderful to find someone with a few genuine thoughts on this subject.
Really.. many thanks for starting this up. This site is something
that is required on the web, someone with a little originality!

Wade's picture

It is much more engaging than a Power - Point could
ever be. To deal with the problem of headless servers, IT professionals in the past would typically turn to KVM switches
that were either rack mounted or standalone, or
intricate software. My video resolution problem was solved immediately.

payday at home scam's picture

You have made some really good points there. I looked
on the internet for more info about the issue
and found most people will go along with your views on this website.

Maldives holidays's picture

Hey very interesting blog!

Truskin Naturals's picture

I was suggested this blog through my cousin. I am no longer positive
whether or not this post is written by him as nobody else recognise such
exact approximately my problem. You're incredible! Thanks!

Zara's picture

Hi just wanted to give you a brief heads up and let you know a few
of the pictures aren't loading properly. I'm not sure why but I think its a linking issue.
I've tried it in two different web browsers and both show the same results.

pata negra's picture

First of all I would like to say terrific blog! I had a
quick question that I'd like to ask if you don't mind. I was curious to find out how you center yourself and clear your thoughts before writing.
I have had trouble clearing my thoughts in getting my ideas out.

I do enjoy writing but it just seems like the
first 10 to 15 minutes are lost simply just trying to figure out how to begin.
Any ideas or tips? Thanks!

http://www.gta5moneyglitcher.com's picture

Hi, the whole thing is going perfectly here and ofcourse every one is
sharing facts, that's in fact fine, keep up writing.

how to grow taller naturally's picture

Your way of telling the whole thing in this post is truly fastidious,
every one be able to effortlessly understand it, Thanks a lot.

Aging Brains's picture

Great goods from you, man. I've understand your stuff previous to and you are
just extremely excellent. I really like
what you have acquired here, really like what you're stating and the way in which you say it.

You make it entertaining and you still take care of to keep it wise.
I can not wait to read far more from you. This is actually a terrific web site.

Irvin's picture

El britanico efectuo en septiembre su cuarta visita a Chile, en la
que ofrecio una conferencia abierta a todo publico en el Centro
Cultural Gabriela Mistral, GAM, por su muestra denominada Luxury, en Galeria AFA,
en Santiago Centro.

Kyto Cleanse's picture

I don't even understand how I finished up right here,
but I thought this put up used to be great. I do not recognize who you might be however definitely you are going to
a famous blogger if you happen to aren't already.

Cheers!

Star's picture

Good info. Lucky me I came across your website by
chance (stumbleupon). I have bookmarked it
for later!

Residential House Cleaning Portland's picture

Post writing is also a excitement, if you know then you can write or else it is complicated to write.

憲法改正's picture

Shi Jie gaHun Luan sitaFen Wei Qi noZhuang Kuang desuga,
Jin Xian Zai ,Lun Yi gaHuo Fa ninatuteiruXian Fa Gai Zheng noMing Ti nituite,Zi Fen haXing Wei gaaru,Quan Ran Wu Guan Xin noRen ,Guan Xin haarugaXiang sikuWu iRen ,iroirodearutoSi waremasu.
Zhu Guo noigirisuyahuransunadodehaHe Du moXian Fa woGai Zheng siteiruShi Ji nanodesuga,Ri Ben nioitehaXian Fa woYi Du toiedomoGai Xian siteinainohaJing kubekikotodesu.
toriwakePing He Xian Fa toYun warerukotomoaru9Tiao woBian esasenaikotoniGu Zhi suruGe Ren moDuo iyoudesugaga,anatahadonoyouniGan zimasuka?

12bet's picture

You're so cool! I do not think I have read a single thing like that before.
So nice to discover someone with some original thoughts on this topic.
Seriously.. many thanks for starting this up. This site
is one thing that's needed on the web, someone with a bit of originality!

Tonye Cole's picture

My partner and I absolutely love your blog and find almost all of your post's to be exactly what I'm looking for.
can you offer guest writers to write content availale for you?
I wouldn't mind creating a post or elablrating on many of the subjects
you write concerning here. Again, awesome web log!

Tonye Cole's picture

Ievery time spent my half an hour to read this blog's articles all the time along with a cup of coffee.

Akilah's picture

Si lo teneis comprado podeis usar vuestra cuenta escogiendo Minecraft Original en el desplegable.

xtreme qpon's picture

Useful info. Fortunate me I discovered your site by accident, and I am shocked why this accident did not came
about earlier! I bookmarked it.

learn how to academy scam's picture

I was suggested this blog by my cousin. I'm not sure whether this post is written by him as no one
else know such detailed about my problem. You
are amazing! Thanks!

tshirt printing toronto's picture

Good response in return of this difficulty with firm arguments and explaining the whole thing on the
topic of that.

instagram's picture

Hi! I realize this is somewhat off-topic but I had to ask. Does operating a
well-established website such as yours require a massive amount
work? I am brand new to blogging however I do write
in my journal daily. I'd like to start a blog
so I will be able to share my personal experience and thoughts online.
Please let me know if you have any suggestions or tips for
brand new aspiring bloggers. Appreciate it!

web instagram's picture

This is the perfect webpage for anyone who wants to understand
this topic. You understand so much its almost hard
to argue with you (not that I really would want to...HaHa).
You definitely put a fresh spin on a subject which has been written about for decades.
Wonderful stuff, just great!

lipogen rx garcinia cambogia's picture

I loved as much as you'll receive carried out right here.
The sketch is attractive, your authored subject matter stylish.
nonetheless, you command get bought an shakiness over that you wish be delivering the following.

unwell unquestionably come more formerly again as exactly the same nearly very often inside case you shield this hike.

pure green coffee direct's picture

What's up to all, how is all, I think every one is getting more from this site, and your views are good in favor of
new users.

jlc-eco.jp's picture

This web site gives just important info and I am subscribing to it-this instant!
Thanks people!

Pages

Add new comment