appoptics_apm 4.2.3 → 4.2.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/.gitignore +5 -0
- data/.travis.yml +15 -12
- data/Gemfile +0 -1
- data/README.md +7 -38
- data/Rakefile +17 -1
- data/appoptics_apm.gemspec +2 -0
- data/{build_gems.sh → build_gem.sh} +1 -1
- data/build_gem_upload_to_packagecloud.sh +15 -0
- data/examples/SDK/01_basic_tracing.rb +1 -1
- data/ext/oboe_metal/src/VERSION +1 -1
- data/ext/oboe_metal/src/bson/bson.h +1 -2
- data/ext/oboe_metal/src/bson/platform_hacks.h +4 -4
- data/lib/appoptics_apm.rb +28 -30
- data/lib/appoptics_apm/api/logging.rb +13 -27
- data/lib/appoptics_apm/api/metrics.rb +25 -11
- data/lib/appoptics_apm/api/profiling.rb +6 -11
- data/lib/appoptics_apm/api/tracing.rb +3 -24
- data/lib/appoptics_apm/base.rb +7 -32
- data/lib/appoptics_apm/config.rb +26 -4
- data/lib/appoptics_apm/frameworks/grape.rb +10 -8
- data/lib/appoptics_apm/frameworks/padrino.rb +3 -0
- data/lib/appoptics_apm/frameworks/rails.rb +20 -42
- data/lib/appoptics_apm/frameworks/rails/inst/action_controller.rb +4 -6
- data/lib/appoptics_apm/frameworks/rails/inst/action_controller4.rb +1 -1
- data/lib/appoptics_apm/frameworks/rails/inst/action_controller5.rb +1 -1
- data/lib/appoptics_apm/frameworks/rails/inst/action_controller_api.rb +1 -1
- data/lib/appoptics_apm/frameworks/rails/inst/connection_adapters/utils.rb +1 -9
- data/lib/appoptics_apm/frameworks/rails/inst/connection_adapters/utils5x.rb +1 -1
- data/lib/appoptics_apm/frameworks/sinatra.rb +4 -1
- data/lib/appoptics_apm/inst/bunny-client.rb +16 -18
- data/lib/appoptics_apm/inst/memcached.rb +6 -10
- data/lib/appoptics_apm/inst/moped.rb +1 -1
- data/lib/appoptics_apm/inst/rack.rb +13 -15
- data/lib/appoptics_apm/inst/sidekiq-worker.rb +1 -1
- data/lib/appoptics_apm/inst/typhoeus.rb +4 -2
- data/lib/appoptics_apm/loading.rb +1 -1
- data/lib/appoptics_apm/sdk.rb +48 -50
- data/lib/appoptics_apm/version.rb +1 -1
- data/lib/appoptics_apm/xtrace.rb +1 -1
- data/lib/oboe_metal.rb +13 -11
- data/lib/rails/generators/appoptics_apm/templates/appoptics_apm_initializer.rb +45 -7
- metadata +5 -16
- data/.codeclimate.yml +0 -43
- data/Dockerfile +0 -41
- data/Dockerfile_alpine +0 -66
- data/Dockerfile_test +0 -73
- data/config/initializers/.keep +0 -0
- data/docker-compose.yml +0 -95
- data/ext/oboe_metal/tests/test.rb +0 -11
- data/lib/appoptics_apm/frameworks/rails/inst/action_controller2.rb +0 -61
- data/lib/appoptics_apm/frameworks/rails/inst/action_view_2x.rb +0 -56
- data/ruby_setup.sh +0 -49
- data/run_docker_build_gem_upload_to_packagecloud.sh +0 -20
- data/run_tests_docker.rb +0 -38
|
@@ -8,6 +8,47 @@
|
|
|
8
8
|
|
|
9
9
|
if defined?(AppOpticsAPM::Config)
|
|
10
10
|
|
|
11
|
+
# :service_key, :hostname_alias, and :debug_level are startup settings and can't be changed afterwards.
|
|
12
|
+
#
|
|
13
|
+
# Set APPOPTICS_SERVICE_KEY
|
|
14
|
+
# This Setting will be overridden if APPOPTICS_SERVICE_KEY is set as an environment variable.
|
|
15
|
+
# This is a required setting. If the service key is not set here it needs to be set as environment variable.
|
|
16
|
+
#
|
|
17
|
+
# The service key is a combination of the API token plus a service name.
|
|
18
|
+
# E.g.: 0123456789abcde0123456789abcde0123456789abcde0123456789abcde1234:my_service
|
|
19
|
+
#
|
|
20
|
+
# AppOpticsAPM::Config[:service_key] = '0123456789abcde0123456789abcde0123456789abcde0123456789abcde1234:my_service'
|
|
21
|
+
|
|
22
|
+
#
|
|
23
|
+
# Set APPOPTICS_HOSTNAME_ALIAS
|
|
24
|
+
# This Setting will be overridden if APPOPTICS_HOSTNAME_ALIAS is set as an environment variable
|
|
25
|
+
#
|
|
26
|
+
# AppOpticsAPM::Config[:hostname_alias] = 'alias_name'
|
|
27
|
+
|
|
28
|
+
#
|
|
29
|
+
# Set APPOPTICS_DEBUG_LEVEL
|
|
30
|
+
# This Setting will be overridden if APPOPTICS_DEBUG_LEVEL is set as an environment variable
|
|
31
|
+
#
|
|
32
|
+
# It sets the log level and takes the following values:
|
|
33
|
+
## 0 fatal, 1 error, 2 warning, 3 info (the default), 4 debug low, 5 debug medium, 6 debug high.
|
|
34
|
+
#
|
|
35
|
+
#
|
|
36
|
+
AppOpticsAPM::Config[:debug_level] = 3
|
|
37
|
+
#
|
|
38
|
+
# :debug_level will be used in the c-extension of the gem and also mapped to the
|
|
39
|
+
# Ruby logger as FATAL, ERROR, WARN, INFO, or DEBUG
|
|
40
|
+
# The Ruby logger can afterwards be changed to a different level as follows:
|
|
41
|
+
# AppOpticsAPM.logger.level = Logger::INFO
|
|
42
|
+
|
|
43
|
+
#
|
|
44
|
+
# Set APPOPTICS_GEM_VERBOSE
|
|
45
|
+
# This Setting will be overridden if APPOPTICS_GEM_VERBOSE is set as an environment variable
|
|
46
|
+
#
|
|
47
|
+
# On startup the components that are being instrumented will be reported if this is set to true.
|
|
48
|
+
# If true and the log level is 4 or higher this may create extra debug log messages
|
|
49
|
+
#
|
|
50
|
+
AppOpticsAPM::Config[:verbose] = false
|
|
51
|
+
|
|
11
52
|
#
|
|
12
53
|
# Turn tracing on or off
|
|
13
54
|
#
|
|
@@ -17,11 +58,6 @@ if defined?(AppOpticsAPM::Config)
|
|
|
17
58
|
#
|
|
18
59
|
AppOpticsAPM::Config[:tracing_mode] = :always
|
|
19
60
|
|
|
20
|
-
#
|
|
21
|
-
# Verbose output of instrumentation initialization
|
|
22
|
-
#
|
|
23
|
-
AppOpticsAPM::Config[:verbose] = ENV.key?('APPOPTICS_GEM_VERBOSE') && ENV['APPOPTICS_GEM_VERBOSE'] == 'true' ? true : false
|
|
24
|
-
|
|
25
61
|
#
|
|
26
62
|
# Prepend domain to transaction name
|
|
27
63
|
#
|
|
@@ -92,7 +128,7 @@ if defined?(AppOpticsAPM::Config)
|
|
|
92
128
|
# In Rails, raised exceptions with rescue handlers via
|
|
93
129
|
# <tt>rescue_from</tt> are not reported to the AppOptics
|
|
94
130
|
# dashboard by default. Setting this value to true will
|
|
95
|
-
# report all raised
|
|
131
|
+
# report all raised exceptions regardless.
|
|
96
132
|
#
|
|
97
133
|
AppOpticsAPM::Config[:report_rescued_errors] = false
|
|
98
134
|
#
|
|
@@ -122,7 +158,9 @@ if defined?(AppOpticsAPM::Config)
|
|
|
122
158
|
#
|
|
123
159
|
# If you're having trouble with one of the instrumentation libraries, they
|
|
124
160
|
# can be individually disabled here by setting the :enabled
|
|
125
|
-
# value to false
|
|
161
|
+
# value to false.
|
|
162
|
+
#
|
|
163
|
+
# :enabled settings are read on startup and can't be changed afterwards
|
|
126
164
|
#
|
|
127
165
|
AppOpticsAPM::Config[:action_controller][:enabled] = true
|
|
128
166
|
AppOpticsAPM::Config[:action_controller_api][:enabled] = true
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: appoptics_apm
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 4.2.
|
|
4
|
+
version: 4.2.4
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Maia Engeli
|
|
@@ -10,7 +10,7 @@ authors:
|
|
|
10
10
|
autorequire:
|
|
11
11
|
bindir: bin
|
|
12
12
|
cert_chain: []
|
|
13
|
-
date: 2018-
|
|
13
|
+
date: 2018-09-04 00:00:00.000000000 Z
|
|
14
14
|
dependencies:
|
|
15
15
|
- !ruby/object:Gem::Dependency
|
|
16
16
|
name: json
|
|
@@ -112,7 +112,6 @@ extensions:
|
|
|
112
112
|
extra_rdoc_files:
|
|
113
113
|
- LICENSE
|
|
114
114
|
files:
|
|
115
|
-
- ".codeclimate.yml"
|
|
116
115
|
- ".dockerignore"
|
|
117
116
|
- ".gitignore"
|
|
118
117
|
- ".rubocop.yml"
|
|
@@ -120,9 +119,6 @@ files:
|
|
|
120
119
|
- ".yardopts"
|
|
121
120
|
- CHANGELOG.md
|
|
122
121
|
- CONFIG.md
|
|
123
|
-
- Dockerfile
|
|
124
|
-
- Dockerfile_alpine
|
|
125
|
-
- Dockerfile_test
|
|
126
122
|
- Gemfile
|
|
127
123
|
- LICENSE
|
|
128
124
|
- README.md
|
|
@@ -130,9 +126,8 @@ files:
|
|
|
130
126
|
- Vagrantfile
|
|
131
127
|
- appoptics_apm.gemspec
|
|
132
128
|
- bin/appoptics_apm_config
|
|
133
|
-
-
|
|
134
|
-
-
|
|
135
|
-
- docker-compose.yml
|
|
129
|
+
- build_gem.sh
|
|
130
|
+
- build_gem_upload_to_packagecloud.sh
|
|
136
131
|
- examples/SDK/01_basic_tracing.rb
|
|
137
132
|
- examples/carrying_context.rb
|
|
138
133
|
- ext/oboe_metal/extconf.rb
|
|
@@ -145,7 +140,6 @@ files:
|
|
|
145
140
|
- ext/oboe_metal/src/oboe.hpp
|
|
146
141
|
- ext/oboe_metal/src/oboe_debug.h
|
|
147
142
|
- ext/oboe_metal/src/oboe_wrap.cxx
|
|
148
|
-
- ext/oboe_metal/tests/test.rb
|
|
149
143
|
- init.rb
|
|
150
144
|
- lib/appoptics_apm.rb
|
|
151
145
|
- lib/appoptics_apm/api.rb
|
|
@@ -163,13 +157,11 @@ files:
|
|
|
163
157
|
- lib/appoptics_apm/frameworks/padrino/templates.rb
|
|
164
158
|
- lib/appoptics_apm/frameworks/rails.rb
|
|
165
159
|
- lib/appoptics_apm/frameworks/rails/inst/action_controller.rb
|
|
166
|
-
- lib/appoptics_apm/frameworks/rails/inst/action_controller2.rb
|
|
167
160
|
- lib/appoptics_apm/frameworks/rails/inst/action_controller3.rb
|
|
168
161
|
- lib/appoptics_apm/frameworks/rails/inst/action_controller4.rb
|
|
169
162
|
- lib/appoptics_apm/frameworks/rails/inst/action_controller5.rb
|
|
170
163
|
- lib/appoptics_apm/frameworks/rails/inst/action_controller_api.rb
|
|
171
164
|
- lib/appoptics_apm/frameworks/rails/inst/action_view.rb
|
|
172
|
-
- lib/appoptics_apm/frameworks/rails/inst/action_view_2x.rb
|
|
173
165
|
- lib/appoptics_apm/frameworks/rails/inst/action_view_30.rb
|
|
174
166
|
- lib/appoptics_apm/frameworks/rails/inst/active_record.rb
|
|
175
167
|
- lib/appoptics_apm/frameworks/rails/inst/connection_adapters/mysql.rb
|
|
@@ -225,9 +217,6 @@ files:
|
|
|
225
217
|
- lib/oboe_metal.rb
|
|
226
218
|
- lib/rails/generators/appoptics_apm/install_generator.rb
|
|
227
219
|
- lib/rails/generators/appoptics_apm/templates/appoptics_apm_initializer.rb
|
|
228
|
-
- ruby_setup.sh
|
|
229
|
-
- run_docker_build_gem_upload_to_packagecloud.sh
|
|
230
|
-
- run_tests_docker.rb
|
|
231
220
|
- yardoc_frontpage.md
|
|
232
221
|
homepage: https://www.appoptics.com/
|
|
233
222
|
licenses:
|
|
@@ -249,7 +238,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
249
238
|
version: '0'
|
|
250
239
|
requirements: []
|
|
251
240
|
rubyforge_project:
|
|
252
|
-
rubygems_version: 2.
|
|
241
|
+
rubygems_version: 2.7.4
|
|
253
242
|
signing_key:
|
|
254
243
|
specification_version: 4
|
|
255
244
|
summary: AppOptics APM performance instrumentation gem for Ruby
|
data/.codeclimate.yml
DELETED
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
engines:
|
|
3
|
-
duplication:
|
|
4
|
-
enabled: true
|
|
5
|
-
config:
|
|
6
|
-
languages:
|
|
7
|
-
- ruby
|
|
8
|
-
- javascript
|
|
9
|
-
- python
|
|
10
|
-
- php
|
|
11
|
-
checks:
|
|
12
|
-
Similar code:
|
|
13
|
-
enabled: false
|
|
14
|
-
fixme:
|
|
15
|
-
enabled: true
|
|
16
|
-
rubocop:
|
|
17
|
-
enabled: true
|
|
18
|
-
checks:
|
|
19
|
-
Rubocop/Metrics/AbcSize:
|
|
20
|
-
enabled: false
|
|
21
|
-
Rubocop/Style/ConditionalAssignment:
|
|
22
|
-
enabled: false
|
|
23
|
-
Rubocop/Metrics/MethodLength:
|
|
24
|
-
enabled: false
|
|
25
|
-
Rubocop/Metrics/ModuleLength:
|
|
26
|
-
enabled: false
|
|
27
|
-
Rubocop/Metrics/LineLength:
|
|
28
|
-
enabled: false
|
|
29
|
-
Rubocop/Lint/EnsureReturn:
|
|
30
|
-
enabled: false
|
|
31
|
-
ratings:
|
|
32
|
-
paths:
|
|
33
|
-
- "**.inc"
|
|
34
|
-
- "**.js"
|
|
35
|
-
- "**.jsx"
|
|
36
|
-
- "**.module"
|
|
37
|
-
- "**.php"
|
|
38
|
-
- "**.py"
|
|
39
|
-
- "**.rb"
|
|
40
|
-
exclude_paths:
|
|
41
|
-
- test/
|
|
42
|
-
- examples/
|
|
43
|
-
- ext/oboe_metal/tests/
|
data/Dockerfile
DELETED
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
FROM ubuntu:16.04
|
|
2
|
-
|
|
3
|
-
# Use this Dockerfile to create the gem
|
|
4
|
-
# > docker build -f Dockerfile -t buildgem .
|
|
5
|
-
# > docker run --rm -v `pwd`:/code/ruby-appoptics buildgem bash -l -c 'cd /code/ruby-appoptics && ./build_gems.sh'
|
|
6
|
-
|
|
7
|
-
# install OS packages
|
|
8
|
-
RUN apt-get update \
|
|
9
|
-
&& apt-get install -y --no-install-recommends \
|
|
10
|
-
build-essential \
|
|
11
|
-
curl \
|
|
12
|
-
git-core \
|
|
13
|
-
libpcre3-dev \
|
|
14
|
-
libreadline-dev \
|
|
15
|
-
libssl-dev \
|
|
16
|
-
openjdk-8-jdk \
|
|
17
|
-
zlib1g-dev \
|
|
18
|
-
less \
|
|
19
|
-
&& rm -rf /var/lib/apt/lists/*
|
|
20
|
-
|
|
21
|
-
# rbenv setup
|
|
22
|
-
# use rbenv-default-gems to automatically install bundler for each ruby version
|
|
23
|
-
RUN git clone https://github.com/rbenv/rbenv.git ~/.rbenv \
|
|
24
|
-
&& git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build \
|
|
25
|
-
&& git clone https://github.com/rbenv/rbenv-default-gems.git ~/.rbenv/plugins/rbenv-default-gems \
|
|
26
|
-
&& echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.profile \
|
|
27
|
-
&& echo 'eval "$(rbenv init -)"' >> ~/.profile \
|
|
28
|
-
&& echo 'bundler' > ~/.rbenv/default-gems
|
|
29
|
-
|
|
30
|
-
# install rubies to build our gem against
|
|
31
|
-
RUN . ~/.profile \
|
|
32
|
-
&& rbenv install 2.3.1
|
|
33
|
-
# && rbenv install jruby-9.0.5.0
|
|
34
|
-
|
|
35
|
-
# install swig 3.0.8
|
|
36
|
-
RUN curl -SL http://kent.dl.sourceforge.net/project/swig/swig/swig-3.0.8/swig-3.0.8.tar.gz \
|
|
37
|
-
| tar xzC /tmp \
|
|
38
|
-
&& cd /tmp/swig-3.0.8 \
|
|
39
|
-
&& ./configure && make && make install \
|
|
40
|
-
&& cd \
|
|
41
|
-
&& rm -rf /tmp/swig-3.0.8
|
data/Dockerfile_alpine
DELETED
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
FROM ruby:2.4-alpine3.7
|
|
2
|
-
|
|
3
|
-
# Use this Dockerfile to create the gem
|
|
4
|
-
# > docker build -f Dockerfile_alpine -t ruby_alpine .
|
|
5
|
-
# > docker run --rm -v `pwd`:/code/ruby-appoptics ruby_alpine /bin/bash -l -c 'cd /code/ruby-appoptics'
|
|
6
|
-
|
|
7
|
-
# install OS packages
|
|
8
|
-
RUN apk update
|
|
9
|
-
RUN apk add --upgrade \
|
|
10
|
-
bash \
|
|
11
|
-
build-base \
|
|
12
|
-
curl \
|
|
13
|
-
curl-dev \
|
|
14
|
-
linux-headers \
|
|
15
|
-
git \
|
|
16
|
-
pcre \
|
|
17
|
-
pcre-dev \
|
|
18
|
-
readline-dev \
|
|
19
|
-
openjdk8 \
|
|
20
|
-
zlib-dev \
|
|
21
|
-
less \
|
|
22
|
-
swig \
|
|
23
|
-
&& rm -rf /var/lib/apt/lists/*
|
|
24
|
-
|
|
25
|
-
# rbenv setup
|
|
26
|
-
# use rbenv-default-gems to automatically install bundler for each ruby version
|
|
27
|
-
RUN git clone https://github.com/rbenv/rbenv.git ~/.rbenv \
|
|
28
|
-
&& git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build \
|
|
29
|
-
&& git clone https://github.com/rbenv/rbenv-default-gems.git ~/.rbenv/plugins/rbenv-default-gems \
|
|
30
|
-
&& echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.profile \
|
|
31
|
-
&& echo 'eval "$(rbenv init -)"' >> ~/.profile \
|
|
32
|
-
&& echo 'bundler' > ~/.rbenv/default-gems
|
|
33
|
-
|
|
34
|
-
# install rubies to build our gem against
|
|
35
|
-
RUN source ~/.profile \
|
|
36
|
-
&& rbenv install 2.3.1 \
|
|
37
|
-
&& rbenv install 2.4.1 \
|
|
38
|
-
# && rbenv install jruby-9.0.5.0
|
|
39
|
-
|
|
40
|
-
# install swig 3.0.8
|
|
41
|
-
RUN curl -SL http://kent.dl.sourceforge.net/project/swig/swig/swig-3.0.8/swig-3.0.8.tar.gz \
|
|
42
|
-
| tar xzC /tmp \
|
|
43
|
-
&& cd /tmp/swig-3.0.8 \
|
|
44
|
-
&& ./configure && make && make install \
|
|
45
|
-
&& cd \
|
|
46
|
-
&& rm -rf /tmp/swig-3.0.8
|
|
47
|
-
|
|
48
|
-
RUN apk add --upgrade \
|
|
49
|
-
redis \
|
|
50
|
-
memcached \
|
|
51
|
-
postgresql \
|
|
52
|
-
openrc \
|
|
53
|
-
&& rc-service postgresql start \
|
|
54
|
-
&& echo "psql --command \"CREATE USER docker WITH SUPERUSER PASSWORD 'docker';\"" >> /tmp/config \
|
|
55
|
-
&& echo "createdb -O docker travis_ci_test" >> /tmp/config \
|
|
56
|
-
&& su postgres -c "bash /tmp/config" \
|
|
57
|
-
&& rm -f /tmp/config
|
|
58
|
-
|
|
59
|
-
RUN apk add --update mysql-client mysql mariadb
|
|
60
|
-
|
|
61
|
-
ENV PATH="/root/.rbenv/bin:/root/.rbenv/shims:$PATH"
|
|
62
|
-
ENV RUBY_ENV=test
|
|
63
|
-
ENV DOCKER_PSQL_PASS=docker
|
|
64
|
-
ENV APPOPTICS_OS_ARCH=alpine-x86_64
|
|
65
|
-
|
|
66
|
-
CMD bash
|
data/Dockerfile_test
DELETED
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
FROM ubuntu:16.04
|
|
2
|
-
|
|
3
|
-
# to use with ./run_tests_docker.rb
|
|
4
|
-
# docker build -f Dockerfile_test -t ruby_appoptics_apm .
|
|
5
|
-
|
|
6
|
-
# install OS packages
|
|
7
|
-
RUN apt-get update \
|
|
8
|
-
&& apt-get install -y --no-install-recommends \
|
|
9
|
-
build-essential \
|
|
10
|
-
apt-utils \
|
|
11
|
-
curl \
|
|
12
|
-
git-core \
|
|
13
|
-
libpcre3-dev \
|
|
14
|
-
libreadline-dev \
|
|
15
|
-
libsasl2-dev \
|
|
16
|
-
libssl-dev \
|
|
17
|
-
openjdk-8-jdk \
|
|
18
|
-
zlib1g-dev \
|
|
19
|
-
libcurl4-gnutls-dev \
|
|
20
|
-
libmysqlclient-dev \
|
|
21
|
-
libpq-dev \
|
|
22
|
-
vim \
|
|
23
|
-
less \
|
|
24
|
-
tree \
|
|
25
|
-
psmisc \
|
|
26
|
-
&& rm -rf /var/lib/apt/lists/*
|
|
27
|
-
|
|
28
|
-
# rbenv setup
|
|
29
|
-
# use rbenv-default-gems to automatically install bundler for each ruby version
|
|
30
|
-
RUN git clone https://github.com/rbenv/rbenv.git ~/.rbenv \
|
|
31
|
-
&& git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build \
|
|
32
|
-
&& git clone https://github.com/rbenv/rbenv-default-gems.git ~/.rbenv/plugins/rbenv-default-gems \
|
|
33
|
-
&& echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.profile \
|
|
34
|
-
&& echo 'eval "$(rbenv init -)"' >> ~/.profile \
|
|
35
|
-
&& echo 'bundler' > ~/.rbenv/default-gems
|
|
36
|
-
|
|
37
|
-
# install rubies to build our gem against
|
|
38
|
-
RUN . ~/.profile \
|
|
39
|
-
&& rbenv install 2.3.6 \
|
|
40
|
-
&& rbenv install 2.4.3 \
|
|
41
|
-
&& rbenv install 2.4.4 \
|
|
42
|
-
&& rbenv install 2.5.1
|
|
43
|
-
# && rbenv install jruby-9.1.16.0
|
|
44
|
-
|
|
45
|
-
# install swig 3.0.8
|
|
46
|
-
RUN curl -SL http://kent.dl.sourceforge.net/project/swig/swig/swig-3.0.8/swig-3.0.8.tar.gz \
|
|
47
|
-
| tar xzC /tmp \
|
|
48
|
-
&& cd /tmp/swig-3.0.8 \
|
|
49
|
-
&& ./configure && make && make install \
|
|
50
|
-
&& cd \
|
|
51
|
-
&& rm -rf /tmp/swig-3.0.8
|
|
52
|
-
|
|
53
|
-
# install postgres, redis, and memcached
|
|
54
|
-
RUN apt-get update \
|
|
55
|
-
&& DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
|
|
56
|
-
redis-server \
|
|
57
|
-
memcached \
|
|
58
|
-
postgresql \
|
|
59
|
-
postgresql-contrib \
|
|
60
|
-
&& service postgresql start \
|
|
61
|
-
&& echo "psql --command \"CREATE USER docker WITH SUPERUSER PASSWORD 'docker';\"" >> /tmp/config \
|
|
62
|
-
&& echo "createdb -O docker travis_ci_test" >> /tmp/config \
|
|
63
|
-
&& su postgres -c "bash /tmp/config" \
|
|
64
|
-
&& rm -f /tmp/config
|
|
65
|
-
|
|
66
|
-
RUN apt-get update && \
|
|
67
|
-
apt-get -y install mysql-client libmysqlclient-dev
|
|
68
|
-
|
|
69
|
-
ENV PATH="/root/.rbenv/bin:/root/.rbenv/shims:$PATH"
|
|
70
|
-
ENV RUBY_ENV=test
|
|
71
|
-
ENV DOCKER_PSQL_PASS=docker
|
|
72
|
-
ENV APPOPTICS_TOKEN_BUCKET_CAPACITY=1000
|
|
73
|
-
ENV APPOPTICS_TOKEN_BUCKET_RATE=1000
|
data/config/initializers/.keep
DELETED
|
File without changes
|
data/docker-compose.yml
DELETED
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
version: "2"
|
|
2
|
-
|
|
3
|
-
#########################################################################################################
|
|
4
|
-
#
|
|
5
|
-
# to start the services:
|
|
6
|
-
# > docker-compose up -d
|
|
7
|
-
# ('ruby_appoptics' and 'wait' will exit)
|
|
8
|
-
#
|
|
9
|
-
# to run some ruby tests:
|
|
10
|
-
# > docker-compose run --service-ports ruby_appoptics_apm /code/ruby-appoptics_apm/ruby_setup.sh 2.3.6 gemfiles/rails42.gemfile
|
|
11
|
-
#
|
|
12
|
-
########################################################################################################
|
|
13
|
-
|
|
14
|
-
services:
|
|
15
|
-
ruby_appoptics_apm:
|
|
16
|
-
container_name: ruby_appoptics_apm
|
|
17
|
-
image: ruby_appoptics_apm
|
|
18
|
-
build:
|
|
19
|
-
context: .
|
|
20
|
-
dockerfile: ./Dockerfile_test
|
|
21
|
-
cpu_quota: 100000 # 1 cpu, assumes cpu_period of 1 second
|
|
22
|
-
mem_limit: 1G
|
|
23
|
-
volumes:
|
|
24
|
-
- .:/code/ruby-appoptics_apm
|
|
25
|
-
depends_on:
|
|
26
|
-
- wait
|
|
27
|
-
links:
|
|
28
|
-
- wait
|
|
29
|
-
environment:
|
|
30
|
-
- APPOPTICS_RABBITMQ_SERVER=rabbitmq
|
|
31
|
-
- DOCKER_MYSQL_PASS=admin
|
|
32
|
-
- MYSQL_ALLOW_EMPTY_PASSWORD=yes
|
|
33
|
-
- MYSQL_ROOT_PASSWORD=admin
|
|
34
|
-
- MYSQL_HOST=mysql
|
|
35
|
-
- APPOPTICS_MONGO_SERVER=mongo
|
|
36
|
-
|
|
37
|
-
# ruby_appoptics_apm_alpine:
|
|
38
|
-
# container_name: ruby_appoptics_apm_alpine
|
|
39
|
-
# image: ruby_alpine
|
|
40
|
-
# build:
|
|
41
|
-
# context: .
|
|
42
|
-
# dockerfile: ./Dockerfile_alpine
|
|
43
|
-
# cpu_quota: 100000 # 1 cpu, assumes cpu_period of 1 second
|
|
44
|
-
# mem_limit: 1G
|
|
45
|
-
# volumes:
|
|
46
|
-
# - .:/code/ruby-appoptics_apm
|
|
47
|
-
# depends_on:
|
|
48
|
-
# - wait
|
|
49
|
-
# links:
|
|
50
|
-
# - wait
|
|
51
|
-
# environment:
|
|
52
|
-
# - APPOPTICS_RABBITMQ_SERVER=rabbitmq
|
|
53
|
-
# - DOCKER_MYSQL_PASS=admin
|
|
54
|
-
# - MYSQL_ALLOW_EMPTY_PASSWORD=yes
|
|
55
|
-
# - MYSQL_ROOT_PASSWORD=admin
|
|
56
|
-
# - MYSQL_HOST=mysql
|
|
57
|
-
# - APPOPTICS_MONGO_SERVER=mongo
|
|
58
|
-
|
|
59
|
-
rabbitmq:
|
|
60
|
-
container_name: rabbitmq
|
|
61
|
-
image: rabbitmq:3-management
|
|
62
|
-
ports:
|
|
63
|
-
- "8080:15672"
|
|
64
|
-
- "5672:5672"
|
|
65
|
-
- "5671:5671"
|
|
66
|
-
|
|
67
|
-
mysql:
|
|
68
|
-
container_name: mysql
|
|
69
|
-
image: mysql:5.7.13
|
|
70
|
-
environment:
|
|
71
|
-
- MYSQL_ALLOW_EMPTY_PASSWORD=yes
|
|
72
|
-
- MYSQL_ROOT_PASSWORD=admin
|
|
73
|
-
ports:
|
|
74
|
-
- "3306:3306"
|
|
75
|
-
|
|
76
|
-
mongo:
|
|
77
|
-
container_name: mongo
|
|
78
|
-
image: mongo:3.4
|
|
79
|
-
ports:
|
|
80
|
-
- "27017:27017"
|
|
81
|
-
|
|
82
|
-
wait:
|
|
83
|
-
container_name: wait
|
|
84
|
-
image: waisbrot/wait
|
|
85
|
-
depends_on:
|
|
86
|
-
- rabbitmq
|
|
87
|
-
- mysql
|
|
88
|
-
- mongo
|
|
89
|
-
links:
|
|
90
|
-
- rabbitmq
|
|
91
|
-
- mysql
|
|
92
|
-
- mongo
|
|
93
|
-
environment:
|
|
94
|
-
- TARGETS=mysql:3306;rabbitmq:5672;mongo:27017
|
|
95
|
-
|