couchbase 3.0.0.alpha.5-universal-darwin-19 → 3.0.0.beta.1-universal-darwin-19

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.
Files changed (124) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +12 -3
  3. data/README.md +4 -2
  4. data/Rakefile +1 -1
  5. data/couchbase.gemspec +17 -12
  6. data/ext/.idea/misc.xml +12 -0
  7. data/ext/CMakeLists.txt +10 -1
  8. data/ext/build_config.hxx.in +20 -0
  9. data/ext/build_version.hxx.in +1 -1
  10. data/ext/couchbase/bucket.hxx +90 -24
  11. data/ext/couchbase/cluster.hxx +125 -84
  12. data/ext/couchbase/cluster_options.hxx +53 -0
  13. data/ext/couchbase/configuration.hxx +220 -2
  14. data/ext/couchbase/couchbase.cxx +134 -127
  15. data/ext/couchbase/io/dns_client.hxx +3 -1
  16. data/ext/couchbase/io/http_command.hxx +91 -0
  17. data/ext/couchbase/io/http_session.hxx +58 -19
  18. data/ext/couchbase/io/http_session_manager.hxx +26 -31
  19. data/ext/couchbase/io/mcbp_command.hxx +180 -0
  20. data/ext/couchbase/io/mcbp_message.hxx +5 -0
  21. data/ext/couchbase/io/mcbp_session.hxx +213 -98
  22. data/ext/couchbase/io/streams.hxx +165 -0
  23. data/ext/couchbase/operations.hxx +1 -1
  24. data/ext/couchbase/operations/analytics_dataset_create.hxx +1 -1
  25. data/ext/couchbase/operations/bucket_create.hxx +4 -2
  26. data/ext/couchbase/operations/bucket_drop.hxx +4 -2
  27. data/ext/couchbase/operations/bucket_flush.hxx +4 -2
  28. data/ext/couchbase/operations/bucket_get.hxx +4 -2
  29. data/ext/couchbase/operations/bucket_get_all.hxx +4 -2
  30. data/ext/couchbase/operations/bucket_update.hxx +4 -2
  31. data/ext/couchbase/operations/cluster_developer_preview_enable.hxx +4 -2
  32. data/ext/couchbase/operations/collection_create.hxx +4 -2
  33. data/ext/couchbase/operations/collection_drop.hxx +4 -2
  34. data/ext/couchbase/operations/document_analytics.hxx +0 -4
  35. data/ext/couchbase/operations/document_decrement.hxx +6 -3
  36. data/ext/couchbase/operations/document_get.hxx +3 -0
  37. data/ext/couchbase/operations/document_get_and_lock.hxx +3 -0
  38. data/ext/couchbase/operations/document_get_and_touch.hxx +5 -2
  39. data/ext/couchbase/operations/document_get_projected.hxx +12 -9
  40. data/ext/couchbase/operations/document_increment.hxx +6 -3
  41. data/ext/couchbase/operations/document_insert.hxx +5 -2
  42. data/ext/couchbase/operations/document_lookup_in.hxx +3 -0
  43. data/ext/couchbase/operations/document_mutate_in.hxx +6 -3
  44. data/ext/couchbase/operations/document_remove.hxx +3 -0
  45. data/ext/couchbase/operations/document_replace.hxx +5 -2
  46. data/ext/couchbase/operations/document_search.hxx +6 -7
  47. data/ext/couchbase/operations/document_touch.hxx +5 -2
  48. data/ext/couchbase/operations/document_unlock.hxx +3 -0
  49. data/ext/couchbase/operations/document_upsert.hxx +5 -2
  50. data/ext/couchbase/operations/query_index_build_deferred.hxx +3 -3
  51. data/ext/couchbase/operations/query_index_create.hxx +3 -3
  52. data/ext/couchbase/operations/query_index_drop.hxx +3 -3
  53. data/ext/couchbase/operations/query_index_get_all.hxx +3 -3
  54. data/ext/couchbase/operations/scope_create.hxx +4 -2
  55. data/ext/couchbase/operations/scope_drop.hxx +4 -2
  56. data/ext/couchbase/operations/scope_get_all.hxx +4 -2
  57. data/ext/couchbase/operations/search_index_analyze_document.hxx +2 -2
  58. data/ext/couchbase/operations/search_index_control_ingest.hxx +2 -2
  59. data/ext/couchbase/operations/search_index_control_plan_freeze.hxx +2 -2
  60. data/ext/couchbase/operations/search_index_control_query.hxx +2 -2
  61. data/ext/couchbase/operations/search_index_drop.hxx +2 -2
  62. data/ext/couchbase/operations/search_index_get.hxx +2 -2
  63. data/ext/couchbase/operations/search_index_get_all.hxx +2 -2
  64. data/ext/couchbase/operations/search_index_get_documents_count.hxx +2 -2
  65. data/ext/couchbase/operations/search_index_upsert.hxx +2 -2
  66. data/ext/couchbase/origin.hxx +148 -0
  67. data/ext/couchbase/protocol/cmd_cluster_map_change_notification.hxx +1 -6
  68. data/ext/couchbase/protocol/cmd_decrement.hxx +5 -5
  69. data/ext/couchbase/protocol/cmd_get_and_touch.hxx +5 -5
  70. data/ext/couchbase/protocol/cmd_get_cluster_config.hxx +1 -6
  71. data/ext/couchbase/protocol/cmd_increment.hxx +5 -5
  72. data/ext/couchbase/protocol/cmd_info.hxx +0 -11
  73. data/ext/couchbase/protocol/cmd_insert.hxx +5 -5
  74. data/ext/couchbase/protocol/cmd_mutate_in.hxx +6 -6
  75. data/ext/couchbase/protocol/cmd_replace.hxx +5 -5
  76. data/ext/couchbase/protocol/cmd_touch.hxx +1 -1
  77. data/ext/couchbase/protocol/cmd_upsert.hxx +5 -5
  78. data/ext/couchbase/timeout_defaults.hxx +7 -0
  79. data/ext/couchbase/utils/connection_string.hxx +139 -0
  80. data/ext/extconf.rb +44 -11
  81. data/ext/test/main.cxx +93 -15
  82. data/ext/third_party/http_parser/Makefile +160 -0
  83. data/ext/third_party/json/Makefile +77 -0
  84. data/lib/couchbase/analytics_options.rb +18 -4
  85. data/lib/couchbase/binary_collection.rb +2 -2
  86. data/lib/couchbase/binary_collection_options.rb +2 -2
  87. data/lib/couchbase/bucket.rb +4 -4
  88. data/lib/couchbase/cluster.rb +60 -46
  89. data/lib/couchbase/collection.rb +13 -13
  90. data/lib/couchbase/collection_options.rb +15 -9
  91. data/{bin/console → lib/couchbase/datastructures.rb} +4 -7
  92. data/lib/couchbase/datastructures/couchbase_list.rb +171 -0
  93. data/lib/couchbase/datastructures/couchbase_map.rb +205 -0
  94. data/lib/couchbase/datastructures/couchbase_queue.rb +145 -0
  95. data/lib/couchbase/datastructures/couchbase_set.rb +138 -0
  96. data/lib/couchbase/errors.rb +66 -63
  97. data/lib/couchbase/libcouchbase.bundle +0 -0
  98. data/lib/couchbase/management/user_manager.rb +1 -1
  99. data/lib/couchbase/mutation_state.rb +1 -0
  100. data/lib/couchbase/query_options.rb +25 -2
  101. data/lib/couchbase/scope.rb +0 -7
  102. data/lib/couchbase/search_options.rb +7 -0
  103. data/lib/couchbase/version.rb +1 -1
  104. data/lib/couchbase/view_options.rb +4 -3
  105. metadata +20 -82
  106. data/.github/workflows/tests-6.0.3.yml +0 -52
  107. data/.github/workflows/tests-dev-preview.yml +0 -55
  108. data/.github/workflows/tests.yml +0 -50
  109. data/.gitignore +0 -20
  110. data/.gitmodules +0 -21
  111. data/.idea/.gitignore +0 -5
  112. data/.idea/dictionaries/gem_terms.xml +0 -18
  113. data/.idea/inspectionProfiles/Project_Default.xml +0 -8
  114. data/.idea/vcs.xml +0 -13
  115. data/bin/check-cluster +0 -31
  116. data/bin/fetch-stats +0 -19
  117. data/bin/init-cluster +0 -82
  118. data/bin/jenkins/build-extension +0 -35
  119. data/bin/jenkins/install-dependencies +0 -47
  120. data/bin/jenkins/test-with-cbdyncluster +0 -58
  121. data/bin/setup +0 -24
  122. data/ext/couchbase/configuration_monitor.hxx +0 -93
  123. data/ext/couchbase/operations/command.hxx +0 -163
  124. data/rbi/couchbase.rbi +0 -79
@@ -1,52 +0,0 @@
1
- name: tests-6.0.3
2
-
3
- on:
4
- push:
5
- branches: [ master ]
6
- pull_request:
7
- branches: [ master ]
8
-
9
- jobs:
10
- test:
11
-
12
- runs-on: ubuntu-latest
13
-
14
- services:
15
- couchbase:
16
- image: couchbase:enterprise-6.0.3
17
- ports:
18
- - 8091-8095:8091-8095
19
- - 11210:11210
20
-
21
- steps:
22
- - name: Install build environment
23
- run: sudo apt-get install -y libssl-dev cmake gcc g++ curl
24
-
25
- - uses: actions/checkout@v2
26
- with:
27
- submodules: recursive
28
-
29
- - name: Set up ruby
30
- uses: ruby/setup-ruby@v1
31
- with:
32
- ruby-version: 2.6
33
-
34
- - name: Install dependencies
35
- run: bundle install
36
-
37
- - name: Initialize couchbase
38
- run: ./bin/init-cluster
39
-
40
- - name: Compile extension
41
- run: bundle exec rake compile
42
-
43
- - name: Display library version
44
- run: bundle exec ruby -I lib -r couchbase -e 'pp Couchbase::VERSION'
45
-
46
- - name: Check couchbase
47
- run: ./bin/check-cluster
48
-
49
- - name: Run tests
50
- run: bundle exec rake test
51
- env:
52
- TEST_SERVER_VERSION: 6.0.3
@@ -1,55 +0,0 @@
1
- name: tests-dev-preview
2
-
3
- on:
4
- push:
5
- branches: [ master ]
6
- pull_request:
7
- branches: [ master ]
8
-
9
- jobs:
10
- test:
11
-
12
- runs-on: ubuntu-latest
13
-
14
- services:
15
- couchbase:
16
- image: couchbase:enterprise-6.5.1
17
- ports:
18
- - 8091-8095:8091-8095
19
- - 11210:11210
20
-
21
- steps:
22
- - name: Install build environment
23
- run: sudo apt-get install -y libssl-dev cmake gcc g++ curl
24
-
25
- - uses: actions/checkout@v2
26
- with:
27
- submodules: recursive
28
-
29
- - name: Set up ruby
30
- uses: ruby/setup-ruby@v1
31
- with:
32
- ruby-version: 2.6
33
-
34
- - name: Install dependencies
35
- run: bundle install
36
-
37
- - name: Initialize couchbase
38
- run: ./bin/init-cluster
39
- env:
40
- DEVELOPER_PREVIEW: yes
41
-
42
- - name: Compile extension
43
- run: bundle exec rake compile
44
-
45
- - name: Display library version
46
- run: bundle exec ruby -I lib -r couchbase -e 'pp Couchbase::VERSION'
47
-
48
- - name: Check couchbase
49
- run: ./bin/check-cluster
50
-
51
- - name: Run tests
52
- run: bundle exec rake test
53
- env:
54
- DEVELOPER_PREVIEW: yes
55
- TEST_SERVER_VERSION: 6.5.1
@@ -1,50 +0,0 @@
1
- name: tests
2
-
3
- on:
4
- push:
5
- branches: [ master ]
6
- pull_request:
7
- branches: [ master ]
8
-
9
- jobs:
10
- test:
11
-
12
- runs-on: ubuntu-latest
13
-
14
- services:
15
- couchbase:
16
- image: couchbase
17
- ports:
18
- - 8091-8095:8091-8095
19
- - 11210:11210
20
-
21
- steps:
22
- - name: Install build environment
23
- run: sudo apt-get install -y libssl-dev cmake gcc g++ curl
24
-
25
- - uses: actions/checkout@v2
26
- with:
27
- submodules: recursive
28
-
29
- - name: Set up ruby
30
- uses: ruby/setup-ruby@v1
31
- with:
32
- ruby-version: 2.6
33
-
34
- - name: Install dependencies
35
- run: bundle install
36
-
37
- - name: Initialize couchbase
38
- run: ./bin/init-cluster
39
-
40
- - name: Compile extension
41
- run: bundle exec rake compile
42
-
43
- - name: Display library version
44
- run: bundle exec ruby -I lib -r couchbase -e 'pp Couchbase::VERSION'
45
-
46
- - name: Check couchbase
47
- run: ./bin/check-cluster
48
-
49
- - name: Run tests
50
- run: bundle exec rake test
data/.gitignore DELETED
@@ -1,20 +0,0 @@
1
- *.a
2
- *.gem
3
- *.o
4
- *.so
5
- *.dylib
6
- *.bundle
7
- .byebug_history
8
- /.rakeTasks
9
- /.yardoc
10
- /_yardoc/
11
- /cmake-build-*/
12
- /coverage/
13
- /doc/
14
- /pkg/
15
- /test/reports/
16
- /tmp/
17
- /vendor/bundle/
18
- Gemfile.lock
19
- Makefile
20
- mkmf.log
@@ -1,21 +0,0 @@
1
- [submodule "ext/third_party/gsl"]
2
- path = ext/third_party/gsl
3
- url = git://github.com/microsoft/gsl.git
4
- [submodule "ext/third_party/json"]
5
- path = ext/third_party/json
6
- url = git://github.com/taocpp/json.git
7
- [submodule "ext/third_party/spdlog"]
8
- path = ext/third_party/spdlog
9
- url = git://github.com/gabime/spdlog.git
10
- [submodule "ext/third_party/http_parser"]
11
- path = ext/third_party/http_parser
12
- url = git://github.com/nodejs/http-parser.git
13
- [submodule "ext/third_party/asio"]
14
- path = ext/third_party/asio
15
- url = git://github.com/chriskohlhoff/asio.git
16
- [submodule "ext/third_party/snappy"]
17
- path = ext/third_party/snappy
18
- url = git://github.com/google/snappy.git
19
- [submodule "test_data/sdk_test_cases"]
20
- path = test_data/sdk_test_cases
21
- url = git://github.com/couchbaselabs/sdk-testcases
@@ -1,5 +0,0 @@
1
- *.iml
2
- .rakeTasks
3
- misc.xml
4
- modules.xml
5
- workspace.xml
@@ -1,18 +0,0 @@
1
- <component name="ProjectDictionaryState">
2
- <dictionary name="gem_terms">
3
- <words>
4
- <w>adhoc</w>
5
- <w>datasets</w>
6
- <w>datastores</w>
7
- <w>dataverse</w>
8
- <w>keyspace</w>
9
- <w>libcouchbase</w>
10
- <w>opcode</w>
11
- <w>subdoc</w>
12
- <w>subdocument</w>
13
- <w>upsert</w>
14
- <w>upserting</w>
15
- <w>xattr</w>
16
- </words>
17
- </dictionary>
18
- </component>
@@ -1,8 +0,0 @@
1
- <component name="InspectionProjectProfileManager">
2
- <profile version="1.0">
3
- <option name="myName" value="Project Default" />
4
- <inspection_tool class="Rubocop" enabled="false" level="WARNING" enabled_by_default="false" />
5
- <inspection_tool class="RubyInstanceMethodNamingConvention" enabled="false" level="WARNING" enabled_by_default="false" />
6
- <inspection_tool class="RubyStringKeysInHashInspection" enabled="false" level="WARNING" enabled_by_default="false" />
7
- </profile>
8
- </component>
@@ -1,13 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <project version="4">
3
- <component name="VcsDirectoryMappings">
4
- <mapping directory="$PROJECT_DIR$" vcs="Git" />
5
- <mapping directory="$PROJECT_DIR$/ext/third_party/asio" vcs="Git" />
6
- <mapping directory="$PROJECT_DIR$/ext/third_party/gsl" vcs="Git" />
7
- <mapping directory="$PROJECT_DIR$/ext/third_party/http_parser" vcs="Git" />
8
- <mapping directory="$PROJECT_DIR$/ext/third_party/json" vcs="Git" />
9
- <mapping directory="$PROJECT_DIR$/ext/third_party/snappy" vcs="Git" />
10
- <mapping directory="$PROJECT_DIR$/ext/third_party/spdlog" vcs="Git" />
11
- <mapping directory="$PROJECT_DIR$/test_data/sdk_test_cases" vcs="Git" />
12
- </component>
13
- </project>
@@ -1,31 +0,0 @@
1
- #!/usr/bin/env bash
2
-
3
- # Copyright 2020 Couchbase, Inc.
4
- #
5
- # Licensed under the Apache License, Version 2.0 (the "License");
6
- # you may not use this file except in compliance with the License.
7
- # You may obtain a copy of the License at
8
- #
9
- # http://www.apache.org/licenses/LICENSE-2.0
10
- #
11
- # Unless required by applicable law or agreed to in writing, software
12
- # distributed under the License is distributed on an "AS IS" BASIS,
13
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
- # See the License for the specific language governing permissions and
15
- # limitations under the License.
16
-
17
- HOST=${HOST:-localhost}
18
- USERNAME=${USERNAME:-Administrator}
19
- PASSWORD=${PASSWOWRD:-password}
20
-
21
- CREDS="${USERNAME}:${PASSWORD}"
22
-
23
- sleep 1
24
-
25
- set -ex
26
-
27
- curl -sS -w "\n" -u${CREDS} http://${HOST}:8091/pools
28
- curl -sS -w "\n" -u${CREDS} http://${HOST}:8091/pools/default
29
- curl -sS -w "\n" -u${CREDS} http://${HOST}:8091/pools/default/buckets/default
30
- curl -sS -w "\n" -u${CREDS} http://${HOST}:8091/pools/default/b/default
31
-
@@ -1,19 +0,0 @@
1
- #!/usr/bin/ruby
2
-
3
- require "json"
4
- require "net/http"
5
- require "pp"
6
-
7
- Net::HTTP.start("rubygems.org", use_ssl: true) do |client|
8
- case resp = client.get("/api/v1/versions/couchbase.json")
9
- when Net::HTTPSuccess
10
- versions = JSON.parse(resp.body)
11
- stats = Hash.new(0)
12
- versions.each { |version| stats[version["number"]] += version["downloads_count"] }
13
- puts JSON.pretty_generate(
14
- versions: stats,
15
- total: stats.values.sum,
16
- total_3: stats.filter_map { |version, downloads| downloads if version =~ /^3.0.0/ }.sum,
17
- )
18
- end
19
- end
@@ -1,82 +0,0 @@
1
- #!/usr/bin/env bash
2
-
3
- # Copyright 2020 Couchbase, Inc.
4
- #
5
- # Licensed under the Apache License, Version 2.0 (the "License");
6
- # you may not use this file except in compliance with the License.
7
- # You may obtain a copy of the License at
8
- #
9
- # http://www.apache.org/licenses/LICENSE-2.0
10
- #
11
- # Unless required by applicable law or agreed to in writing, software
12
- # distributed under the License is distributed on an "AS IS" BASIS,
13
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
- # See the License for the specific language governing permissions and
15
- # limitations under the License.
16
-
17
- CB_HOST=${CB_HOST:-localhost}
18
- CB_USERNAME=${CB_USERNAME:-Administrator}
19
- CB_PASSWORD=${CB_PASSWOWRD:-password}
20
- CB_QUOTA=${CB_QUOTA:-256}
21
- CB_DEVELOPER_PREVIEW=${CB_DEVELOPER_PREVIEW:-no}
22
- CB_BEER_SAMPLE=${CB_BEER_SAMPLE:-no}
23
- CB_TRAVEL_SAMPLE=${CB_TRAVEL_SAMPLE:-no}
24
-
25
- CB_CREDS="${CB_USERNAME}:${CB_PASSWORD}"
26
-
27
- sleep 1
28
-
29
- set -ex
30
-
31
- # Ping cluster
32
- curl -sS http://${CB_HOST}:8091/pools
33
-
34
- # Initialize Node
35
- curl -sS -w "\n" -u ${CB_CREDS} http://${CB_HOST}:8091/nodes/self/controller/settings \
36
- -d 'path=%2Fopt%2Fcouchbase%2Fvar%2Flib%2Fcouchbase%2Fdata' \
37
- -d 'index_path=%2Fopt%2Fcouchbase%2Fvar%2Flib%2Fcouchbase%2Fdata'
38
-
39
- # Setup Memory Quotas
40
- curl -sS -w "\n" -u ${CB_CREDS} http://${CB_HOST}:8091/pools/default \
41
- -d "memoryQuota=${CB_QUOTA}" \
42
- -d 'indexMemoryQuota=256'
43
-
44
- # Setup Services
45
- curl -sS -w "\n" -u ${CB_CREDS} http://${CB_HOST}:8091/node/controller/setupServices \
46
- -d 'services=kv%2Cn1ql%2Cindex%2Cfts%2Ccbas'
47
-
48
- # Setup Administrator username and password
49
- curl -sS -w "\n" -u ${CB_CREDS} http://${CB_HOST}:8091/settings/web \
50
- -d "password=${CB_PASSWORD}" \
51
- -d "username=${CB_USERNAME}" \
52
- -d "port=SAME"
53
-
54
- # Setup index settings
55
- curl -sS -w "\n" -u ${CB_CREDS} http://${CB_HOST}:8091/settings/indexes \
56
- -d "storageMode=plasma"
57
-
58
- # Setup Bucket
59
- curl -sS -w "\n" -u ${CB_CREDS} http://${CB_HOST}:8091/pools/default/buckets \
60
- -d 'flushEnabled=1' \
61
- -d 'threadsNumber=3' \
62
- -d 'replicaIndex=0' \
63
- -d 'replicaNumber=0' \
64
- -d 'evictionPolicy=valueOnly' \
65
- -d 'ramQuotaMB=100' \
66
- -d 'bucketType=membase' \
67
- -d 'name=default'
68
-
69
- if [ "x${CB_BEER_SAMPLE}" != "xno" ]; then
70
- curl -sS -w "\n" -u ${CB_CREDS} http://${CB_HOST}:8091/sampleBuckets/install \
71
- -d '["beer-sample"]'
72
- fi
73
-
74
- if [ "x${CB_TRAVEL_SAMPLE}" != "xno" ]; then
75
- curl -sS -w "\n" -u ${CB_CREDS} http://${CB_HOST}:8091/sampleBuckets/install \
76
- -d '["travel-sample"]'
77
- fi
78
-
79
- if [ "x${CB_DEVELOPER_PREVIEW}" != "xno" ]; then
80
- curl -sS -w "\n" -u ${CB_CREDS} http://${CB_HOST}:8091/settings/developerPreview \
81
- -d "enabled=true"
82
- fi
@@ -1,35 +0,0 @@
1
- #!/usr/bin/env bash
2
-
3
- # Copyright 2020 Couchbase, Inc.
4
- #
5
- # Licensed under the Apache License, Version 2.0 (the "License");
6
- # you may not use this file except in compliance with the License.
7
- # You may obtain a copy of the License at
8
- #
9
- # http://www.apache.org/licenses/LICENSE-2.0
10
- #
11
- # Unless required by applicable law or agreed to in writing, software
12
- # distributed under the License is distributed on an "AS IS" BASIS,
13
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
- # See the License for the specific language governing permissions and
15
- # limitations under the License.
16
-
17
- PROJECT_ROOT="$( cd "$(dirname "$0"/../..)" >/dev/null 2>&1 ; pwd -P )"
18
-
19
- set -x
20
- set -e
21
-
22
- CB_RUBY_VERSION=${CB_RUBY_VERSION:-2.7.1}
23
-
24
- export PATH="$(realpath ~/.cmake-3.17.2/bin):$PATH"
25
-
26
- source /usr/local/share/chruby/chruby.sh
27
- chruby ruby-${CB_RUBY_VERSION}
28
-
29
- ruby --version
30
- bundle --version
31
- bundle config set --local path ${PROJECT_ROOT}/vendor/bundle
32
-
33
- bundle install
34
- export EXT_BUILD_DIR="${PROJECT_ROOT}/build-${RUBY_VERSION}-${BUILD_NUMBER}"
35
- bundle exec rake compile
@@ -1,47 +0,0 @@
1
- #!/usr/bin/env bash
2
-
3
- # Copyright 2020 Couchbase, Inc.
4
- #
5
- # Licensed under the Apache License, Version 2.0 (the "License");
6
- # you may not use this file except in compliance with the License.
7
- # You may obtain a copy of the License at
8
- #
9
- # http://www.apache.org/licenses/LICENSE-2.0
10
- #
11
- # Unless required by applicable law or agreed to in writing, software
12
- # distributed under the License is distributed on an "AS IS" BASIS,
13
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
- # See the License for the specific language governing permissions and
15
- # limitations under the License.
16
-
17
- PROJECT_ROOT="$( cd "$(dirname "$0"/../..)" >/dev/null 2>&1 ; pwd -P )"
18
-
19
- set -x
20
- set -e
21
-
22
- CB_RUBY_VERSION=${CB_RUBY_VERSION:-2.7.1}
23
-
24
- if [ ! -x /usr/local/bin/ruby-install ]
25
- then
26
- wget -O ruby-install-0.7.0.tar.gz https://github.com/postmodern/ruby-install/archive/v0.7.0.tar.gz
27
- tar -xzvf ruby-install-0.7.0.tar.gz
28
- cd ruby-install-0.7.0/
29
- sudo make install
30
- fi
31
-
32
- if [ ! -e /usr/local/share/chruby/chruby.sh ]
33
- then
34
- wget -O chruby-0.3.9.tar.gz https://github.com/postmodern/chruby/archive/v0.3.9.tar.gz
35
- tar -xzvf chruby-0.3.9.tar.gz
36
- cd chruby-0.3.9/
37
- sudo make install
38
- fi
39
-
40
- ruby-install --jobs=6 --no-reinstall ruby ${CB_RUBY_VERSION}
41
-
42
- if [ ! -d ~/.cmake-3.17.2 ]
43
- then
44
- wget https://github.com/Kitware/CMake/releases/download/v3.17.2/cmake-3.17.2-Linux-x86_64.tar.gz
45
- tar xvf cmake-3.17.2-Linux-x86_64.tar.gz
46
- mv cmake-3.17.2-Linux-x86_64 ~/.cmake-3.17.2
47
- fi