-
Notifications
You must be signed in to change notification settings - Fork 15
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 vagrant support for ircb #94
Open
farhaanbukhsh
wants to merge
5
commits into
waartaa:api_fixes
Choose a base branch
from
farhaanbukhsh:vagran-file
base: api_fixes
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
5 commits
Select commit
Hold shift + click to select a range
409664b
Add vagrant support for ircb
farhaanbukhsh 315abee
Improved Vagrantfile and added ansible provision
farhaanbukhsh 1ec5a81
Add port to interact with the api
farhaanbukhsh 8927395
Move starting service and running setup to ansible
farhaanbukhsh 4b0c656
Add dockerfile and read me of how to use it
farhaanbukhsh File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
# Pagure | ||
# Build using: sudo docker build -t "ircb:0.0.1" --rm=true --no-cache . | ||
# | ||
# NAME pagure | ||
# VERSION 0.0.1 | ||
# LAST_UPDATED 2017-03-06 14:47 | ||
|
||
FROM fedora/redis:latest | ||
MAINTAINER Farhaan Bukhsh <[email protected]> | ||
|
||
RUN dnf -y update && dnf clean all | ||
RUN dnf install -y make automake gcc gcc-c++ kernel-devel libffi libffi-devel \ | ||
zeromq zeromq-devel redhat-rpm-config | ||
RUN dnf install -y python2-devel python-setuptools python-nose py-bcrypt python-alembic \ | ||
python-pip python3-devel openssl-devel redis python3-pip | ||
|
||
RUN pip3.4 install Flask==0.10.1 Flask-SQLAlchemy==2.0 Flask-User==0.6.11 \ | ||
SQLAlchemy==1.0.13 SQLAlchemy-Utils==0.30.15 irc3==0.9.3 \ | ||
alembic==0.8.3 WTForms-Alchemy==0.15.0 click==6.3 \ | ||
aioredis==0.2.4 tabulate==0.7.5 aiohttp==1.2.0 \ | ||
aiohttp-auth==0.1.1 aiohttp-session[secure]==0.5.0 \ | ||
aiozmq==0.7.1 msgpack-python==0.4.7 PyYAML==3.11 redis | ||
|
||
EXPOSE 9000 10000 6379 | ||
|
||
CMD ["redis-service"] | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Why start
and so on ... |
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
How to configure | ||
================ | ||
|
||
- Build the docker image | ||
|
||
- Run the command | ||
docker run --rm --name "ircb" -it -p 9000:9000 \ | ||
-p 10000:10000 -p 6739:6739 -v /path/to/ircb:/ircb ircb:0.0.1 \ | ||
bash | ||
|
||
- cd ircb | ||
|
||
- pyhton3 setup.py develop | ||
|
||
Note: Replace path to irc with the absolute path to ircb repo |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,107 @@ | ||
# -*- mode: ruby -*- | ||
# vi: set ft=ruby : | ||
|
||
# All Vagrant configuration is done below. The "2" in Vagrant.configure | ||
# configures the configuration version (we support older styles for | ||
# backwards compatibility). Please don't change it unless you know what | ||
# you're doing. | ||
Vagrant.configure("2") do |config| | ||
# The most common configuration options are documented and commented below. | ||
# For a complete reference, please see the online documentation at | ||
# https://docs.vagrantup.com. | ||
|
||
# Every Vagrant development environment requires a box. You can search for | ||
# boxes at https://atlas.hashicorp.com/search. | ||
config.vm.box = "fedora/24-cloud-base" | ||
|
||
# Disable automatic box update checking. If you disable this, then | ||
# boxes will only be checked for updates when the user runs | ||
# `vagrant box outdated`. This is not recommended. | ||
# config.vm.box_check_update = false | ||
|
||
# Create a forwarded port mapping which allows access to a specific port | ||
# within the machine from a port on the host machine. In the example below, | ||
# accessing "localhost:8080" will access port 80 on the guest machine. | ||
# config.vm.network "forwarded_port", guest: 80, host: 8080 | ||
config.vm.network "forwarded_port", guest: 9000, host: 9000 | ||
config.vm.network "forwarded_port", guest: 10000, host: 10000 | ||
|
||
# Create a private network, which allows host-only access to the machine | ||
# using a specific IP. | ||
# config.vm.network "private_network", ip: "192.168.33.10" | ||
if Vagrant.has_plugin?("vagrant-hostmanager") | ||
config.hostmanager.enabled = true | ||
config.hostmanager.manage_host = true | ||
end | ||
# Create a public network, which generally matched to bridged network. | ||
# Bridged networks make the machine appear as another physical device on | ||
# your network. | ||
# config.vm.network "public_network" | ||
|
||
# Share an additional folder to the guest VM. The first argument is | ||
# the path on the host to the actual folder. The second argument is | ||
# the path on the guest to mount the folder. And the optional third | ||
# argument is a set of non-required options. | ||
# config.vm.synced_folder ".", "/vagrant", type:"rsync" | ||
config.vm.synced_folder ".", "/vagrant", disable: true | ||
config.vm.synced_folder ".", "/home/vagrant/devel", type: "rsync" | ||
# If you want to turn on the sshfs uncomment the following line and comment | ||
# the above mentioned line | ||
# config.vm.synced_folder ".", "/home/vagrant/devel", type: "sshfs", sshfs_opts_append: "-o nonempty", reverse: true | ||
# | ||
# Comment this line if you would like to disable the automatic update during provisioning | ||
config.vm.provision "shell", inline: "sudo dnf upgrade -y" | ||
# bootstrap and run with ansible | ||
config.vm.provision "shell", inline: "sudo dnf -y install python2-dnf libselinux-python" | ||
config.vm.provision "ansible" do |ansible| | ||
ansible.playbook = "ansible/vagrant-playbook.yml" | ||
end | ||
# Provider-specific configuration so you can fine-tune various | ||
# backing providers for Vagrant. These expose provider-specific options. | ||
# Example for VirtualBox: | ||
# | ||
# config.vm.provider "virtualbox" do |vb| | ||
# # Display the VirtualBox GUI when booting the machine | ||
# vb.gui = true | ||
# | ||
# # Customize the amount of memory on the VM: | ||
# vb.memory = "1024" | ||
# end | ||
# | ||
# View the documentation for the provider you are using for more | ||
# information on available options. | ||
|
||
# Define a Vagrant Push strategy for pushing to Atlas. Other push strategies | ||
# such as FTP and Heroku are also available. See the documentation at | ||
# https://docs.vagrantup.com/v2/push/atlas.html for more information. | ||
# config.push.define "atlas" do |push| | ||
# push.app = "YOUR_ATLAS_USERNAME/YOUR_APPLICATION_NAME" | ||
# end | ||
|
||
# Enable provisioning with a shell script. Additional provisioners such as | ||
# Puppet, Chef, Ansible, Salt, and Docker are also available. Please see the | ||
# documentation for more information about their specific syntax and use. | ||
# config.vm.provision "shell", inline: <<-SHELL | ||
# apt-get update | ||
# apt-get install -y apache2 | ||
# SHELL | ||
config.vm.define "ircb" do |ircb| | ||
ircb.vm.host_name = "ircb-dev.example.com" | ||
|
||
ircb.vm.provider :libvirt do |domain| | ||
# Season to taste | ||
domain.cpus = 4 | ||
domain.graphics_type = "spice" | ||
domain.memory = 2048 | ||
domain.video_type = "qxl" | ||
|
||
# Uncomment the following line if you would like to enable libvirt's unsafe cache | ||
# mode. It is called unsafe for a reason, as it causes the virtual host to ignore all | ||
# fsync() calls from the guest. Only do this if you are comfortable with the possibility of | ||
# your development guest becoming corrupted (in which case you should only need to do a | ||
# vagrant destroy and vagrant up to get a new one). | ||
# | ||
# domain.volume_cache = "unsafe" | ||
end | ||
end | ||
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
- name: restart redis | ||
service: name=redis state=restarted |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
--- | ||
- name: Install helpfull packages | ||
dnf: name={{ item }} state=present | ||
with_items: | ||
- git | ||
- python-rpdb | ||
- tmux | ||
- tree | ||
- vim-enhanced | ||
|
||
- name: Install ircb development packages | ||
dnf: name={{ item }} state=present | ||
with_items: | ||
- gcc | ||
- libffi-devel | ||
- python-alembic | ||
- redis | ||
- python3-devel | ||
- openssl-devel | ||
- python-pip | ||
- python-virtualenvwrapper | ||
- python-devel | ||
- libffi | ||
- python | ||
- zeromq | ||
- zeromq-devel | ||
- redhat-rpm-config | ||
|
||
- name: Install python packages for ircb | ||
pip: requirements=/home/vagrant/devel/requirements.txt executable=pip3.5 | ||
|
||
- name: Run python3 setup | ||
shell: python3 setup.py develop | ||
args: | ||
chdir: /home/vagrant/devel | ||
|
||
- name: Start redis service | ||
service: name=redis state=started enabled=yes |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
--- | ||
- hosts: all | ||
become: true | ||
become_method: sudo | ||
vars: | ||
roles: | ||
- ircb-dev |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -15,3 +15,4 @@ aiohttp-session[secure]==0.5.0 | |
aiozmq==0.7.1 | ||
msgpack-python==0.4.7 | ||
PyYAML==3.11 | ||
redis |
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.
Why not install from
requirements.txt
?