Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
C
configuration
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
edx
configuration
Commits
64891052
Commit
64891052
authored
Feb 03, 2016
by
Tim Krones
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Update Vagrantfiles and playbook for analyticstack.
parent
947eedfe
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
84 additions
and
101 deletions
+84
-101
playbooks/vagrant-analytics.yml
+12
-0
vagrant/base/analyticstack/Vagrantfile
+31
-58
vagrant/release/analyticstack/Vagrantfile
+41
-43
No files found.
playbooks/vagrant-analytics.yml
View file @
64891052
...
...
@@ -14,8 +14,10 @@
EDXAPP_LMS_BASE
:
127.0.0.1:8000
EDXAPP_OAUTH_ENFORCE_SECURE
:
false
EDXAPP_LMS_BASE_SCHEME
:
http
ECOMMERCE_DJANGO_SETTINGS_MODULE
:
"
ecommerce.settings.devstack"
roles
:
-
common
-
vhost
-
edx_ansible
-
mysql
-
edxlocal
...
...
@@ -24,7 +26,17 @@
-
oraclejdk
-
elasticsearch
-
forum
-
ecommerce
-
ecomworker
-
{
role
:
'
rabbitmq'
,
rabbitmq_ip
:
'
127.0.0.1'
}
-
programs
-
role
:
notifier
NOTIFIER_DIGEST_TASK_INTERVAL
:
"
5"
-
browsers
-
browsermob-proxy
-
local_dev
-
demo
-
oauth_client_setup
-
analytics_api
-
analytics_pipeline
-
insights
...
...
vagrant/base/analyticstack/Vagrantfile
View file @
64891052
...
...
@@ -8,20 +8,9 @@ VAGRANTFILE_API_VERSION = "2"
MEMORY
=
4096
CPU_COUNT
=
2
edx_platform_mount_dir
=
"edx-platform"
themes_mount_dir
=
"themes"
forum_mount_dir
=
"cs_comments_service"
insights_mount_dir
=
"insights"
analytics_api_mount_dir
=
"analytics_api"
if
ENV
[
'VAGRANT_MOUNT_BASE'
]
edx_platform_mount_dir
=
ENV
[
'VAGRANT_MOUNT_BASE'
]
+
"/"
+
edx_platform_mount_dir
themes_mount_dir
=
ENV
[
'VAGRANT_MOUNT_BASE'
]
+
"/"
+
themes_mount_dir
forum_mount_dir
=
ENV
[
'VAGRANT_MOUNT_BASE'
]
+
"/"
+
forum_mount_dir
insights_mount_dir
=
ENV
[
'VAGRANT_MOUNT_BASE'
]
+
"/"
+
insights_mount_dir
analytics_api_mount_dir
=
ENV
[
'VAGRANT_MOUNT_BASE'
]
+
"/"
+
analytics_api_mount_dir
vm_guest_ip
=
"192.168.33.10"
if
ENV
[
"VAGRANT_GUEST_IP"
]
vm_guest_ip
=
ENV
[
"VAGRANT_GUEST_IP"
]
end
Vagrant
.
configure
(
VAGRANTFILE_API_VERSION
)
do
|
config
|
...
...
@@ -30,57 +19,34 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config
.
vm
.
box
=
"precise64"
config
.
vm
.
box_url
=
"http://files.vagrantup.com/precise64.box"
config
.
vm
.
network
:private_network
,
ip:
"192.168.33.10"
config
.
vm
.
network
:forwarded_port
,
guest:
8000
,
host:
8000
# LMS
config
.
vm
.
network
:forwarded_port
,
guest:
8001
,
host:
8001
# Studio
config
.
vm
.
network
:forwarded_port
,
guest:
8003
,
host:
8003
# LMS for Bok Choy
config
.
vm
.
network
:forwarded_port
,
guest:
8031
,
host:
8031
# Studio for Bok Choy
config
.
vm
.
network
:forwarded_port
,
guest:
8120
,
host:
8120
# edX Notes Service
config
.
vm
.
network
:forwarded_port
,
guest:
8765
,
host:
8765
config
.
vm
.
network
:forwarded_port
,
guest:
9200
,
host:
9200
config
.
vm
.
network
:forwarded_port
,
guest:
18080
,
host:
18080
config
.
vm
.
network
:forwarded_port
,
guest:
8100
,
host:
8100
# Analytics Data API
config
.
vm
.
network
:forwarded_port
,
guest:
8110
,
host:
8110
# Insights
config
.
vm
.
network
:forwarded_port
,
guest:
50070
,
host:
50070
# HDFS Admin UI
config
.
vm
.
network
:forwarded_port
,
guest:
8088
,
host:
8088
# Hadoop Resource Manager
config
.
ssh
.
insert_key
=
true
config
.
vm
.
network
:private_network
,
ip:
vm_guest_ip
# If you want to run the box but don't need network ports, set VAGRANT_NO_PORTS=1.
# This is useful if you want to run more than one box at once.
if
not
ENV
[
'VAGRANT_NO_PORTS'
]
config
.
vm
.
network
:forwarded_port
,
guest:
8000
,
host:
8000
# LMS
config
.
vm
.
network
:forwarded_port
,
guest:
8001
,
host:
8001
# Studio
config
.
vm
.
network
:forwarded_port
,
guest:
8002
,
host:
8002
# Ecommerce
config
.
vm
.
network
:forwarded_port
,
guest:
8003
,
host:
8003
# LMS for Bok Choy
config
.
vm
.
network
:forwarded_port
,
guest:
8004
,
host:
8004
# Programs
config
.
vm
.
network
:forwarded_port
,
guest:
8031
,
host:
8031
# Studio for Bok Choy
config
.
vm
.
network
:forwarded_port
,
guest:
8120
,
host:
8120
# edX Notes Service
config
.
vm
.
network
:forwarded_port
,
guest:
8765
,
host:
8765
config
.
vm
.
network
:forwarded_port
,
guest:
9200
,
host:
9200
config
.
vm
.
network
:forwarded_port
,
guest:
18080
,
host:
18080
config
.
vm
.
network
:forwarded_port
,
guest:
8100
,
host:
8100
# Analytics Data API
config
.
vm
.
network
:forwarded_port
,
guest:
8110
,
host:
8110
# Insights
config
.
vm
.
network
:forwarded_port
,
guest:
50070
,
host:
50070
# HDFS Admin UI
config
.
vm
.
network
:forwarded_port
,
guest:
8088
,
host:
8088
# Hadoop Resource Manager
end
config
.
vm
.
synced_folder
"."
,
"/vagrant"
,
disabled:
true
config
.
ssh
.
insert_key
=
true
# Enable X11 forwarding so we can interact with GUI applications
if
ENV
[
'VAGRANT_X11'
]
config
.
ssh
.
forward_x11
=
true
end
if
ENV
[
'VAGRANT_USE_VBOXFS'
]
==
'true'
config
.
vm
.
synced_folder
"
#{
edx_platform_mount_dir
}
"
,
"/edx/app/edxapp/edx-platform"
,
create:
true
,
owner:
"edxapp"
,
group:
"www-data"
config
.
vm
.
synced_folder
"
#{
themes_mount_dir
}
"
,
"/edx/app/edxapp/themes"
,
create:
true
,
owner:
"edxapp"
,
group:
"www-data"
config
.
vm
.
synced_folder
"
#{
forum_mount_dir
}
"
,
"/edx/app/forum/cs_comments_service"
,
create:
true
,
owner:
"forum"
,
group:
"www-data"
config
.
vm
.
synced_folder
"
#{
insights_mount_dir
}
"
,
"/edx/app/insights/edx_analytics_dashboard"
,
create:
true
,
owner:
"insights"
,
group:
"www-data"
config
.
vm
.
synced_folder
"
#{
analytics_api_mount_dir
}
"
,
"/edx/app/analytics_api/analytics_api"
,
create:
true
,
owner:
"analytics_api"
,
group:
"www-data"
config
.
vm
.
synced_folder
"
#{
insights_mount_dir
}
"
,
"/edx/app/insights/edx_analytics_dashboard"
,
create:
true
,
owner:
"insights"
,
group:
"www-data"
config
.
vm
.
synced_folder
"
#{
analytics_api_mount_dir
}
"
,
"/edx/app/analytics_api/analytics_api"
,
create:
true
,
owner:
"analytics_api"
,
group:
"www-data"
else
config
.
vm
.
synced_folder
"
#{
edx_platform_mount_dir
}
"
,
"/edx/app/edxapp/edx-platform"
,
create:
true
,
nfs:
true
config
.
vm
.
synced_folder
"
#{
themes_mount_dir
}
"
,
"/edx/app/edxapp/themes"
,
create:
true
,
nfs:
true
config
.
vm
.
synced_folder
"
#{
forum_mount_dir
}
"
,
"/edx/app/forum/cs_comments_service"
,
create:
true
,
nfs:
true
config
.
vm
.
synced_folder
"
#{
insights_mount_dir
}
"
,
"/edx/app/insights/edx_analytics_dashboard"
,
create:
true
,
nfs:
true
config
.
vm
.
synced_folder
"
#{
analytics_api_mount_dir
}
"
,
"/edx/app/analytics_api/analytics_api"
,
create:
true
,
nfs:
true
end
config
.
vm
.
provider
:virtualbox
do
|
vb
|
vb
.
customize
[
"modifyvm"
,
:id
,
"--memory"
,
MEMORY
.
to_s
]
vb
.
customize
[
"modifyvm"
,
:id
,
"--cpus"
,
CPU_COUNT
.
to_s
]
...
...
@@ -107,6 +73,7 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
if
ENV
[
'OPENEDX_RELEASE'
]
ansible
.
extra_vars
=
{
edx_platform_version:
ENV
[
'OPENEDX_RELEASE'
],
configuration_version:
ENV
[
'OPENEDX_RELEASE'
],
certs_version:
ENV
[
'OPENEDX_RELEASE'
],
forum_version:
ENV
[
'OPENEDX_RELEASE'
],
xqueue_version:
ENV
[
'OPENEDX_RELEASE'
],
...
...
@@ -118,5 +85,11 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
if
ENV
[
'EDX_PLATFORM_VERSION'
]
ansible
.
extra_vars
[
'edx_platform_version'
]
=
ENV
[
'EDX_PLATFORM_VERSION'
]
end
if
ENV
[
'ECOMMERCE_VERSION'
]
ansible
.
extra_vars
[
'ECOMMERCE_VERSION'
]
=
ENV
[
'ECOMMERCE_VERSION'
]
end
if
ENV
[
'PROGRAMS_VERSION'
]
ansible
.
extra_vars
[
'PROGRAMS_VERSION'
]
=
ENV
[
'PROGRAMS_VERSION'
]
end
end
end
vagrant/release/analyticstack/Vagrantfile
View file @
64891052
Vagrant
.
require_version
">= 1.
5.3
"
Vagrant
.
require_version
">= 1.
6.5
"
unless
Vagrant
.
has_plugin?
(
"vagrant-vbguest"
)
raise
"Please install the vagrant-vbguest plugin by running `vagrant plugin install vagrant-vbguest`"
end
...
...
@@ -21,20 +21,22 @@ ansible-playbook -i localhost, -c local vagrant-analytics.yml -e configuration_v
SCRIPT
edx_platform_mount_dir
=
"edx-platform"
themes_mount_dir
=
"themes"
forum_mount_dir
=
"cs_comments_service"
insights_mount_dir
=
"insights"
analytics_api_mount_dir
=
"analytics_api"
MOUNT_DIRS
=
{
:edx_platform
=>
{
:repo
=>
"edx-platform"
,
:local
=>
"/edx/app/edxapp/edx-platform"
,
:owner
=>
"edxapp"
},
:themes
=>
{
:repo
=>
"themes"
,
:local
=>
"/edx/app/edxapp/themes"
,
:owner
=>
"edxapp"
},
:forum
=>
{
:repo
=>
"cs_comments_service"
,
:local
=>
"/edx/app/forum/cs_comments_service"
,
:owner
=>
"forum"
},
:ecommerce
=>
{
:repo
=>
"ecommerce"
,
:local
=>
"/edx/app/ecommerce/ecommerce"
,
:owner
=>
"ecommerce"
},
:ecommerce_worker
=>
{
:repo
=>
"ecommerce-worker"
,
:local
=>
"/edx/app/ecommerce_worker/ecommerce_worker"
,
:owner
=>
"ecommerce_worker"
},
:programs
=>
{
:repo
=>
"programs"
,
:local
=>
"/edx/app/programs/programs"
,
:owner
=>
"programs"
},
:insights
=>
{
:repo
=>
"insights"
,
:local
=>
"/edx/app/insights/edx_analytics_dashboard"
,
:owner
=>
"insights"
},
:analytics_api
=>
{
:repo
=>
"analytics_api"
,
:local
=>
"/edx/app/analytics_api/analytics_api"
,
:owner
=>
"analytics_api"
},
# This src directory won't have useful permissions. You can set them from the
# vagrant user in the guest OS. "sudo chmod 0777 /edx/src" is useful.
:src
=>
{
:repo
=>
"src"
,
:local
=>
"/edx/src"
,
:owner
=>
"root"
},
}
if
ENV
[
'VAGRANT_MOUNT_BASE'
]
edx_platform_mount_dir
=
ENV
[
'VAGRANT_MOUNT_BASE'
]
+
"/"
+
edx_platform_mount_dir
themes_mount_dir
=
ENV
[
'VAGRANT_MOUNT_BASE'
]
+
"/"
+
themes_mount_dir
forum_mount_dir
=
ENV
[
'VAGRANT_MOUNT_BASE'
]
+
"/"
+
forum_mount_dir
insights_mount_dir
=
ENV
[
'VAGRANT_MOUNT_BASE'
]
+
"/"
+
insights_mount_dir
analytics_api_mount_dir
=
ENV
[
'VAGRANT_MOUNT_BASE'
]
+
"/"
+
analytics_api_mount_dir
MOUNT_DIRS
.
each
{
|
k
,
v
|
MOUNT_DIRS
[
k
][
:repo
]
=
ENV
[
'VAGRANT_MOUNT_BASE'
]
+
"/"
+
MOUNT_DIRS
[
k
][
:repo
]
}
end
Vagrant
.
configure
(
VAGRANTFILE_API_VERSION
)
do
|
config
|
...
...
@@ -44,15 +46,25 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config
.
vm
.
box_url
=
"http://files.edx.org/vagrant-images/analyticstack.box"
config
.
vm
.
network
:private_network
,
ip:
"192.168.33.10"
config
.
vm
.
network
:forwarded_port
,
guest:
8000
,
host:
8000
config
.
vm
.
network
:forwarded_port
,
guest:
8001
,
host:
8001
config
.
vm
.
network
:forwarded_port
,
guest:
18080
,
host:
18080
config
.
vm
.
network
:forwarded_port
,
guest:
8765
,
host:
8765
config
.
vm
.
network
:forwarded_port
,
guest:
9200
,
host:
9200
config
.
vm
.
network
:forwarded_port
,
guest:
8100
,
host:
8100
# Analytics Data API
config
.
vm
.
network
:forwarded_port
,
guest:
8110
,
host:
8110
# Insights
config
.
vm
.
network
:forwarded_port
,
guest:
50070
,
host:
50070
# HDFS Admin UI
config
.
vm
.
network
:forwarded_port
,
guest:
8088
,
host:
8088
# Hadoop Resource Manager
# If you want to run the box but don't need network ports, set VAGRANT_NO_PORTS=1.
# This is useful if you want to run more than one box at once.
if
not
ENV
[
'VAGRANT_NO_PORTS'
]
config
.
vm
.
network
:forwarded_port
,
guest:
8000
,
host:
8000
# LMS
config
.
vm
.
network
:forwarded_port
,
guest:
8001
,
host:
8001
# Studio
config
.
vm
.
network
:forwarded_port
,
guest:
8002
,
host:
8002
# Ecommerce
config
.
vm
.
network
:forwarded_port
,
guest:
8003
,
host:
8003
# LMS for Bok Choy
config
.
vm
.
network
:forwarded_port
,
guest:
8031
,
host:
8031
# Studio for Bok Choy
config
.
vm
.
network
:forwarded_port
,
guest:
8120
,
host:
8120
# edX Notes Service
config
.
vm
.
network
:forwarded_port
,
guest:
8765
,
host:
8765
config
.
vm
.
network
:forwarded_port
,
guest:
9200
,
host:
9200
# Elasticsearch
config
.
vm
.
network
:forwarded_port
,
guest:
18080
,
host:
18080
# Forums
config
.
vm
.
network
:forwarded_port
,
guest:
8100
,
host:
8100
# Analytics Data API
config
.
vm
.
network
:forwarded_port
,
guest:
8110
,
host:
8110
# Insights
config
.
vm
.
network
:forwarded_port
,
guest:
9876
,
host:
9876
# ORA2 Karma tests
config
.
vm
.
network
:forwarded_port
,
guest:
50070
,
host:
50070
# HDFS Admin UI
config
.
vm
.
network
:forwarded_port
,
guest:
8088
,
host:
8088
# Hadoop Resource Manager
end
config
.
ssh
.
insert_key
=
true
config
.
vm
.
synced_folder
"."
,
"/vagrant"
,
disabled:
true
...
...
@@ -63,27 +75,13 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
end
if
ENV
[
'VAGRANT_USE_VBOXFS'
]
==
'true'
config
.
vm
.
synced_folder
"
#{
edx_platform_mount_dir
}
"
,
"/edx/app/edxapp/edx-platform"
,
create:
true
,
owner:
"edxapp"
,
group:
"www-data"
config
.
vm
.
synced_folder
"
#{
themes_mount_dir
}
"
,
"/edx/app/edxapp/themes"
,
create:
true
,
owner:
"edxapp"
,
group:
"www-data"
config
.
vm
.
synced_folder
"
#{
forum_mount_dir
}
"
,
"/edx/app/forum/cs_comments_service"
,
create:
true
,
owner:
"forum"
,
group:
"www-data"
config
.
vm
.
synced_folder
"
#{
insights_mount_dir
}
"
,
"/edx/app/insights/edx_analytics_dashboard"
,
create:
true
,
owner:
"insights"
,
group:
"www-data"
config
.
vm
.
synced_folder
"
#{
analytics_api_mount_dir
}
"
,
"/edx/app/analytics_api/analytics_api"
,
create:
true
,
owner:
"analytics_api"
,
group:
"www-data"
MOUNT_DIRS
.
each
{
|
k
,
v
|
config
.
vm
.
synced_folder
v
[
:repo
],
v
[
:local
],
create:
true
,
owner:
v
[
:owner
],
group:
"www-data"
}
else
config
.
vm
.
synced_folder
"
#{
edx_platform_mount_dir
}
"
,
"/edx/app/edxapp/edx-platform"
,
create:
true
,
nfs:
true
config
.
vm
.
synced_folder
"
#{
themes_mount_dir
}
"
,
"/edx/app/edxapp/themes"
,
create:
true
,
nfs:
true
config
.
vm
.
synced_folder
"
#{
forum_mount_dir
}
"
,
"/edx/app/forum/cs_comments_service"
,
create:
true
,
nfs:
true
config
.
vm
.
synced_folder
"
#{
insights_mount_dir
}
"
,
"/edx/app/insights/edx_analytics_dashboard"
,
create:
true
,
nfs:
true
config
.
vm
.
synced_folder
"
#{
analytics_api_mount_dir
}
"
,
"/edx/app/analytics_api/analytics_api"
,
create:
true
,
nfs:
true
MOUNT_DIRS
.
each
{
|
k
,
v
|
config
.
vm
.
synced_folder
v
[
:repo
],
v
[
:local
],
create:
true
,
nfs:
true
}
end
config
.
vm
.
provider
:virtualbox
do
|
vb
|
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment