mirror of
https://github.com/apache/cloudstack.git
synced 2025-10-26 08:42:29 +01:00
70 lines
4.6 KiB
Bash
Executable File
70 lines
4.6 KiB
Bash
Executable File
#!/bin/bash
|
|
# Licensed to the Apache Software Foundation (ASF) under one
|
|
# or more contributor license agreements. See the NOTICE file
|
|
# distributed with this work for additional information
|
|
# regarding copyright ownership. The ASF licenses this file
|
|
# to you under the Apache License, Version 2.0 (the
|
|
# "License"); you may not use this file except in compliance
|
|
# with the License. You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing,
|
|
# software distributed under the License is distributed on an
|
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
# KIND, either express or implied. See the License for the
|
|
# specific language governing permissions and limitations
|
|
# under the License.
|
|
|
|
# Assumes that rvm is installed and you have ruby 1.9.2 installed
|
|
# Assumes that you have virtual box installed
|
|
# Assumes that you have wget installed
|
|
|
|
mkdir ~/builddevcloud
|
|
cd ~/builddevcloud
|
|
git clone https://github.com/jedi4ever/veewee.git
|
|
#TODO: We need to get this patched version of Vagrant to the upstream project
|
|
# or implement the desired changes to Vagrant as plugin modules and
|
|
# host it within the ASF git repo
|
|
git clone https://github.com/chipchilders/vagrant.git
|
|
export rvm_trust_rvmrcs_flag=1
|
|
cd vagrant
|
|
bundle install
|
|
rake install
|
|
cd ~/builddevcloud/veewee
|
|
bundle install
|
|
rake install
|
|
bundle exec vagrant basebox define 'devcloudbase' 'ubuntu-12.04-server-i386'
|
|
wget --no-check-certificate -O ./definitions/devcloudbase/definition.rb https://git-wip-us.apache.org/repos/asf\?p\=incubator-cloudstack.git\;a\=blob_plain\;f\=tools/devcloud/veewee/definition.rb\;hb\=HEAD
|
|
wget --no-check-certificate -O ./definitions/devcloudbase/postinstall.sh https://git-wip-us.apache.org/repos/asf\?p\=incubator-cloudstack.git\;a\=blob_plain\;f\=tools/devcloud/veewee/postinstall.sh\;hb\=HEAD
|
|
wget --no-check-certificate -O ./definitions/devcloudbase/preseed.cfg https://git-wip-us.apache.org/repos/asf\?p\=incubator-cloudstack.git\;a\=blob_plain\;f\=tools/devcloud/veewee/preseed.cfg\;hb\=HEAD
|
|
bundle exec vagrant basebox build 'devcloudbase' -f -a -n
|
|
# possibly use -r here too ^
|
|
bundle exec vagrant basebox export 'devcloudbase' -f
|
|
bundle exec vagrant basebox destroy 'devcloudbase' -f
|
|
bundle exec vagrant box add 'devcloudbase' 'devcloudbase.box' -f
|
|
rm -f devcloudbase.box
|
|
cd ~/builddevcloud/vagrant
|
|
mkdir devcloudbase
|
|
cd devcloudbase
|
|
mkdir puppet-devcloudinitial
|
|
mkdir puppet-devcloudinitial/files
|
|
mkdir puppet-devcloudinitial/manifests
|
|
wget --no-check-certificate -O Vagrantfile "https://git-wip-us.apache.org/repos/asf?p=incubator-cloudstack.git;a=blob_plain;f=tools/devcloud/basebuild/Vagrantfile;hb=HEAD"
|
|
wget --no-check-certificate -O puppet-devcloudinitial/init.pp "https://git-wip-us.apache.org/repos/asf?p=incubator-cloudstack.git;a=blob_plain;f=tools/devcloud/basebuild/puppet-devcloudinitial/init.pp;hb=HEAD"
|
|
wget --no-check-certificate -O puppet-devcloudinitial/Modulefile "https://git-wip-us.apache.org/repos/asf?p=incubator-cloudstack.git;a=blob_plain;f=tools/devcloud/basebuild/puppet-devcloudinitial/Modulefile;hb=HEAD"
|
|
wget --no-check-certificate -O puppet-devcloudinitial/files/grub "https://git-wip-us.apache.org/repos/asf?p=incubator-cloudstack.git;a=blob_plain;f=tools/devcloud/basebuild/puppet-devcloudinitial/files/grub;hb=HEAD"
|
|
wget --no-check-certificate -O puppet-devcloudinitial/files/interfaces "https://git-wip-us.apache.org/repos/asf?p=incubator-cloudstack.git;a=blob_plain;f=tools/devcloud/basebuild/puppet-devcloudinitial/files/interfaces;hb=HEAD"
|
|
wget --no-check-certificate -O puppet-devcloudinitial/files/network.conf "https://git-wip-us.apache.org/repos/asf?p=incubator-cloudstack.git;a=blob_plain;f=tools/devcloud/basebuild/puppet-devcloudinitial/files/network.conf;hb=HEAD"
|
|
wget --no-check-certificate -O puppet-devcloudinitial/files/xen-defaults "https://git-wip-us.apache.org/repos/asf?p=incubator-cloudstack.git;a=blob_plain;f=tools/devcloud/basebuild/puppet-devcloudinitial/files/xen-defaults;hb=HEAD"
|
|
wget --no-check-certificate -O puppet-devcloudinitial/files/xend "https://git-wip-us.apache.org/repos/asf?p=incubator-cloudstack.git;a=blob_plain;f=tools/devcloud/basebuild/puppet-devcloudinitial/files/xend;hb=HEAD"
|
|
wget --no-check-certificate -O puppet-devcloudinitial/manifests/init.pp "https://git-wip-us.apache.org/repos/asf?p=incubator-cloudstack.git;a=blob_plain;f=tools/devcloud/basebuild/puppet-devcloudinitial/manifests/init.pp;hb=HEAD"
|
|
|
|
vagrant up
|
|
vagrant halt
|
|
vagrant package default --output ~/devcloud.box
|
|
vagrant destroy -f
|
|
vagrant box remove devcloudbase virtualbox
|
|
|
|
echo "Your new devcloud base box is stored in ~/devcloud.box"
|