gooddata 2.1.7-java → 2.1.12-java

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 (73) hide show
  1. checksums.yaml +4 -4
  2. data/.gdc-ii-config.yaml +3 -0
  3. data/.rubocop.yml +7 -0
  4. data/.travis.yml +2 -4
  5. data/CHANGELOG.md +39 -0
  6. data/Dockerfile +17 -4
  7. data/Dockerfile.jruby +4 -4
  8. data/Dockerfile.ruby +5 -4
  9. data/SDK_VERSION +1 -1
  10. data/VERSION +1 -1
  11. data/bin/provision.sh +2 -0
  12. data/bin/release.sh +2 -0
  13. data/bin/rollout.sh +2 -0
  14. data/bin/run_brick.rb +31 -7
  15. data/bin/test_projects_cleanup.rb +10 -2
  16. data/bin/user_filters.sh +2 -0
  17. data/ci.rake +1 -1
  18. data/ci/bigquery/pom.xml +54 -0
  19. data/ci/redshift/pom.xml +73 -0
  20. data/ci/snowflake/pom.xml +57 -0
  21. data/dev-gooddata-sso.pub.encrypted +40 -40
  22. data/gdc_fossa_lcm.yaml +2 -0
  23. data/gdc_fossa_ruby_sdk.yaml +4 -0
  24. data/gooddata.gemspec +7 -3
  25. data/k8s/charts/lcm-bricks/Chart.yaml +1 -1
  26. data/k8s/charts/lcm-bricks/templates/prometheus/alertingRules.yaml +22 -12
  27. data/lcm.rake +14 -0
  28. data/lib/gooddata/bricks/middleware/execution_result_middleware.rb +68 -0
  29. data/lib/gooddata/bricks/middleware/logger_middleware.rb +2 -1
  30. data/lib/gooddata/bricks/middleware/mask_logger_decorator.rb +5 -1
  31. data/lib/gooddata/bricks/pipeline.rb +7 -0
  32. data/lib/gooddata/cloud_resources/bigquery/bigquery_client.rb +86 -0
  33. data/lib/gooddata/cloud_resources/bigquery/drivers/.gitkeepme +0 -0
  34. data/lib/gooddata/cloud_resources/cloud_resouce_factory.rb +28 -0
  35. data/lib/gooddata/cloud_resources/cloud_resource_client.rb +24 -0
  36. data/lib/gooddata/cloud_resources/cloud_resources.rb +12 -0
  37. data/lib/gooddata/cloud_resources/redshift/drivers/log4j.properties +15 -0
  38. data/lib/gooddata/cloud_resources/redshift/redshift_client.rb +101 -0
  39. data/lib/gooddata/cloud_resources/snowflake/drivers/.gitkeepme +0 -0
  40. data/lib/gooddata/cloud_resources/snowflake/snowflake_client.rb +84 -0
  41. data/lib/gooddata/exceptions/invalid_env_error.rb +15 -0
  42. data/lib/gooddata/helpers/data_helper.rb +10 -0
  43. data/lib/gooddata/helpers/global_helpers.rb +4 -0
  44. data/lib/gooddata/helpers/global_helpers_params.rb +4 -7
  45. data/lib/gooddata/lcm/actions/collect_clients.rb +6 -6
  46. data/lib/gooddata/lcm/actions/collect_dynamic_schedule_params.rb +6 -6
  47. data/lib/gooddata/lcm/actions/collect_segment_clients.rb +4 -1
  48. data/lib/gooddata/lcm/actions/collect_segments.rb +1 -2
  49. data/lib/gooddata/lcm/actions/collect_users_brick_users.rb +7 -6
  50. data/lib/gooddata/lcm/actions/create_segment_masters.rb +5 -3
  51. data/lib/gooddata/lcm/actions/set_master_project.rb +76 -0
  52. data/lib/gooddata/lcm/actions/synchronize_clients.rb +1 -1
  53. data/lib/gooddata/lcm/actions/synchronize_etls_in_segment.rb +1 -2
  54. data/lib/gooddata/lcm/actions/synchronize_ldm.rb +17 -2
  55. data/lib/gooddata/lcm/actions/synchronize_user_filters.rb +23 -3
  56. data/lib/gooddata/lcm/actions/synchronize_users.rb +50 -30
  57. data/lib/gooddata/lcm/actions/update_release_table.rb +7 -1
  58. data/lib/gooddata/lcm/exceptions/lcm_execution_error.rb +16 -0
  59. data/lib/gooddata/lcm/helpers/release_table_helper.rb +16 -8
  60. data/lib/gooddata/lcm/lcm2.rb +27 -5
  61. data/lib/gooddata/models/domain.rb +17 -15
  62. data/lib/gooddata/models/execution.rb +0 -1
  63. data/lib/gooddata/models/execution_detail.rb +0 -1
  64. data/lib/gooddata/models/profile.rb +33 -11
  65. data/lib/gooddata/models/project.rb +45 -25
  66. data/lib/gooddata/models/project_creator.rb +2 -0
  67. data/lib/gooddata/models/schedule.rb +0 -1
  68. data/lib/gooddata/rest/client.rb +2 -2
  69. data/lib/gooddata/rest/connection.rb +5 -3
  70. data/rubydev_public.gpg.encrypted +51 -51
  71. data/rubydev_secret_keys.gpg.encrypted +109 -109
  72. metadata +38 -15
  73. data/lib/gooddata/extensions/hash.rb +0 -18
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 63f952c3c47f2ec63afa90a1b47d9d859506c9463f5b123b9b445e8c76bb23b3
4
- data.tar.gz: a4b96e6471def8248af6ddc6bcf1dffcb3dbb7b686821ec010ae7ba2684d6041
3
+ metadata.gz: 73f3c8fde12dff87986355749de47fbdbbc334416d032f58c18d993fd5f28967
4
+ data.tar.gz: 73e045492e7cccc765c4ad60c08242c53efaf3a92f9c7adf56af9259a22c14e0
5
5
  SHA512:
6
- metadata.gz: 806a086561c697cbefa90efc4f3207723939ec99b983b9fd2f0ab72480bc794b62acf8af053af9aa76a62f779a03d881778e6d52590d98a715e3efbf26abe119
7
- data.tar.gz: e0ee983afa9c57a18242ba10ed0ea5495a2d5411d89b3d62bb87ffc7a12a9d363cf55638d5ff3f9062b9d7761498360237436b0598c92e9b57e8ffe55a4db40d
6
+ metadata.gz: 1ab74bd538fecff1536d028993fc62cc287435eeb19163fc3db0b842effd3feca3b746113358c7bd3236c9a9ac15f30ac37361b944cadfad6cfa7161f8219f81
7
+ data.tar.gz: 18c48a23901266649fc9f4cf1db10d5f289ea4726f0cc5f63ceb919007f44f2dbbd6b9a37589bc87994c4104136237f49f0540ab7a4648506b5d5521f80c150b
@@ -20,3 +20,6 @@ integratedTests:
20
20
  configFilesForUpdate:
21
21
  - '.gdc-ii-config.yaml'
22
22
  - '.gdc-ii-config-chart.yaml'
23
+
24
+ customConstants:
25
+ pipeline.deploy.testEnvironments: ['stg3', 'stg2', 'stg']
@@ -2,6 +2,7 @@ AllCops:
2
2
  DisplayCopNames: true
3
3
  Exclude:
4
4
  - 'spec/helpers/appstore_project_helper.rb'
5
+ TargetRubyVersion: 2.3
5
6
 
6
7
  AbcSize:
7
8
  Enabled: false
@@ -98,3 +99,9 @@ UselessAccessModifier:
98
99
 
99
100
  Style/PerlBackrefs:
100
101
  Enabled: false
102
+
103
+ Style/Encoding:
104
+ Enabled: false
105
+
106
+ Layout/EmptyLineAfterMagicComment:
107
+ Enabled: false
@@ -15,11 +15,9 @@ stages:
15
15
  git:
16
16
  depth: false # this is needed for pronto
17
17
 
18
- matrix:
18
+ jobs:
19
19
  allow_failures:
20
20
  - rvm: jruby-9.1.14
21
-
22
- jobs:
23
21
  include:
24
22
  # BEFORE MERGE
25
23
  - name: pronto code review
@@ -259,7 +257,7 @@ jobs:
259
257
  stage: after-merge
260
258
  script: bundle exec rake test:unit
261
259
  os: osx
262
- osx_image: xcode9.3
260
+ osx_image: xcode9.4
263
261
  rvm: 2.4.3
264
262
 
265
263
  - name: unit tests 2.5
@@ -1,4 +1,43 @@
1
1
  # GoodData Ruby SDK Changelog
2
+ ## 2.1.12
3
+ - FEATURE: MSF-17621 Apply patched version for activesupport to fix vulnerable issue
4
+ - CONFIG: SETI-4379 Add gdc-fossa configuration for gooddata-ruby
5
+ - CONFIG: MSF-17345 Set umask 0002 for lcm brick
6
+ - BUGFIX: TMA-1015 check case sensitivity for group name
7
+ - BUGFIX: MSF-17219 Fixed incorrect client used in domain.users
8
+ - BUGFIX: TMA-1022 Add more logs for case roll out without LDM change in master
9
+ - FEATURE: TMA-1640 Add alert for CPU limit hit
10
+
11
+ ## 2.1.11
12
+ - FEATURE: TMA-1647 Set VCR version to 5.0.0 due to incompatible license of the latest version
13
+
14
+ ## 2.1.10
15
+ - BUGFIX: TMA-1653 fix performance issue in functions project.users and domain.users
16
+ - BUGFIX: TMA-1643 Don't convert null value to empty string
17
+ - BUGFIX: TMA-1620 Users Brick, sometimes update users are conflicted
18
+ - BUGFIX: TMA-1642 parse csv from input source with case insensitive
19
+ - BUGFIX: TMA-1528: remove CollectSegments and CollectDataProduct for add and remove in users brick
20
+ - FEATURE: TMA-1629 Add parameter "set_master_project" to support reset latest master project
21
+ - FEATURE: TMA-1630 Support Snowflake, BigQuery as input source
22
+ ## 2.1.9
23
+ - FEATURE: TMA-1076 support new version api 2
24
+ - BUGFIX: TMA-1637 handle input_source of dynamic params
25
+ - BUGFIX: TMA-1636 Build csv file with force_quotes
26
+ - FEATURE: TMA-1614 Support redshift input source
27
+ - FEATURE: TMA-1259 Start using dataproduct in NFS release table
28
+ - FEATURE: MSF-16455 support yellow WARNING status into RubySDK
29
+ - CONFIG: TMA-1625 update version lock for test docker images
30
+ - BUGFIX: TMA-1602 User filter brick failed - K8s bricks don't show error properly
31
+ - BUGFIX: TMA-1593 Increase java heap space during execute bricks
32
+ - BUGFIX: TMA-1558 K8s bricks don't show error when config invalid
33
+ - BUGFIX: TMA-1596 The error propagated from a LCM brick is shown multiple times in the log
34
+ - BUGFIX: TMA-1582 show synchronize ldm mode is running
35
+ - FEATURE: TMA-1588 support schedule param include deprecated
36
+ - FEATURE: TMA-1597 Logging lcm execution result
37
+
38
+ ## 2.1.8
39
+ - FEATURE: TMA-1604 Upgrade Restforce version to 3.x
40
+
2
41
  ## 2.1.7
3
42
  - BUGFIX: TMA-1577 Bump brick version to 3.7.9
4
43
  - FEATURE: MSF-16279 Allow gooddata-ruby to be installed with Rails 6 apps
data/Dockerfile CHANGED
@@ -1,4 +1,4 @@
1
- FROM harbor.intgdc.com/tools/gdc-java-8-jre:d0f5e08
1
+ FROM harbor.intgdc.com/tools/gdc-java-8-jre:2fce51b
2
2
 
3
3
  ARG RVM_VERSION=stable
4
4
  ARG JRUBY_VERSION=9.2.5.0
@@ -6,10 +6,10 @@ ARG JRUBY_VERSION=9.2.5.0
6
6
  LABEL image_name="GDC LCM Bricks"
7
7
  LABEL maintainer="LCM <lcm@gooddata.com>"
8
8
  LABEL git_repository_url="https://github.com/gooddata/gooddata-ruby/"
9
- LABEL parent_image="harbor.intgdc.com/tools/gdc-java-8-jre:d0f5e08"
9
+ LABEL parent_image="harbor.intgdc.com/tools/gdc-java-8-jre:2fce51b"
10
10
 
11
11
  # which is required by RVM
12
- RUN yum install -y curl which patch make git \
12
+ RUN yum install -y curl which patch make git maven \
13
13
  && yum clean all \
14
14
  && rm -rf /var/cache/yum
15
15
 
@@ -43,12 +43,25 @@ RUN groupadd -g 48 apache \
43
43
  USER apache
44
44
 
45
45
  ADD ./bin ./bin
46
- ADD ./lib ./lib
46
+ ADD --chown=apache:apache ./ci ./ci
47
+ ADD --chown=apache:apache ./lib ./lib
47
48
  ADD ./SDK_VERSION .
48
49
  ADD ./VERSION .
49
50
  ADD ./Gemfile .
50
51
  ADD ./gooddata.gemspec .
51
52
 
53
+ #build redshift dependencies
54
+ RUN mvn -f ci/redshift/pom.xml clean install -P binary-packaging
55
+ RUN cp -rf ci/redshift/target/*.jar ./lib/gooddata/cloud_resources/redshift/drivers/
56
+
57
+ #build snowflake dependencies
58
+ RUN mvn -f ci/snowflake/pom.xml clean install -P binary-packaging
59
+ RUN cp -rf ci/snowflake/target/*.jar ./lib/gooddata/cloud_resources/snowflake/drivers/
60
+
61
+ #build bigquery dependencies
62
+ RUN mvn -f ci/bigquery/pom.xml clean install -P binary-packaging
63
+ RUN cp -rf ci/bigquery/target/*.jar ./lib/gooddata/cloud_resources/bigquery/drivers/
64
+
52
65
  RUN bundle install
53
66
 
54
67
  ARG GIT_COMMIT=unspecified
@@ -7,11 +7,11 @@ RUN apk add --no-cache curl make gcc git g++ python linux-headers binutils-gold
7
7
  # Switch to directory with sources
8
8
  WORKDIR /src
9
9
  ENV HOME=/src
10
+ ENV BUNDLE_PATH=$HOME/bundle
10
11
 
11
- RUN gem update --system \
12
- && gem install bundler
13
-
14
- ENV BUNDLE_PATH=/bundle
12
+ RUN gem update --system 3.0.6 \
13
+ && gem install --install-dir $BUNDLE_PATH bundler -v 1.17.3 \
14
+ && gem install --install-dir $BUNDLE_PATH rake -v 11.3.0
15
15
 
16
16
  ADD . .
17
17
 
@@ -8,11 +8,12 @@ RUN ln -s /usr/bin/make /usr/bin/gmake
8
8
 
9
9
  # Switch to directory with sources
10
10
  WORKDIR /src
11
+ ENV HOME=/src
12
+ ENV BUNDLE_PATH=$HOME/bundle
11
13
 
12
- RUN gem update --system \
13
- && gem install bundler
14
-
15
- ENV BUNDLE_PATH=/bundle
14
+ RUN gem update --system 3.0.6 \
15
+ && gem install --install-dir $BUNDLE_PATH bundler -v 1.17.3 \
16
+ && gem install --install-dir $BUNDLE_PATH rake -v 11.3.0
16
17
 
17
18
  ADD . .
18
19
 
@@ -1 +1 @@
1
- 2.1.7
1
+ 2.1.12
data/VERSION CHANGED
@@ -1 +1 @@
1
- 3.7.9
1
+ 3.7.20
@@ -1,3 +1,5 @@
1
1
  #!/usr/bin/env bash
2
2
 
3
+ export JRUBY_OPTS=-J-Xmx2560m
4
+
3
5
  /bin/bash -l -c "bundle exec ./bin/run_brick.rb provisioning_brick"
@@ -1,3 +1,5 @@
1
1
  #!/usr/bin/env bash
2
2
 
3
+ export JRUBY_OPTS=-J-Xmx2560m
4
+
3
5
  /bin/bash -l -c "bundle exec ./bin/run_brick.rb release_brick"
@@ -1,3 +1,5 @@
1
1
  #!/usr/bin/env bash
2
2
 
3
+ export JRUBY_OPTS=-J-Xmx2560m
4
+
3
5
  /bin/bash -l -c "bundle exec ./bin/run_brick.rb rollout_brick"
@@ -8,34 +8,58 @@ DEFAULT_BRICK = 'hello_world_brick'
8
8
  BRICK_PARAM_PREFIX = 'BRICK_PARAM_'
9
9
  HIDDEN_BRICK_PARAMS_PREFIX = 'HIDDEN_BRICK_PARAM_'
10
10
 
11
+ # MSF-17345 Set umask so files are group-writable
12
+ File.umask(0002)
13
+
11
14
  brick_type = !ARGV.empty? ? ARGV[0] : DEFAULT_BRICK
12
15
 
13
16
  def get_brick_params(prefix)
14
17
  ENV.select { |k,| k.to_s.match(/^#{prefix}.*/) }.map { |k, v| [k.slice(prefix.length..-1), v] }.to_h
15
18
  end
16
19
 
20
+ def handle_error(params, log, brick_type, error, error_message)
21
+ execution_log = GoodData.logger
22
+ execution_log.error "Execution failed. Error: #{error}" unless execution_log.nil?
23
+ GoodData::Bricks::ExecutionResultMiddleware.update_execution_result(GoodData::Bricks::ExecutionStatus::ERROR, error_message)
24
+ log.error "action=#{brick_type}_execution status=failed commit_hash=#{params['GOODDATA_RUBY_COMMIT']} execution_id=#{params['GDC_EXECUTION_ID']} exception=#{error}"
25
+ raise
26
+ end
27
+
17
28
  syslog_node = ENV['NODE_NAME']
18
29
  log = RemoteSyslogLogger.new(syslog_node, 514, :program => "ruby_#{brick_type}", :facility => 'local2')
19
30
 
20
31
  log.info "action=#{brick_type}_execution status=init"
21
32
 
22
33
  begin
34
+ commit_hash = ENV['GOODDATA_RUBY_COMMIT'] || ''
35
+ execution_id = ENV['GDC_EXECUTION_ID']
36
+ log_directory = ENV['GDC_LOG_DIRECTORY'] || '/tmp/'
37
+ execution_log_path = ENV['GDC_EXECUTION_LOG_PATH']
38
+ execution_result_log_path = ENV['GDC_EXECUTION_RESULT_LOG_PATH']
39
+ execution_result_log_params = {
40
+ 'GOODDATA_RUBY_COMMIT' => commit_hash,
41
+ 'GDC_EXECUTION_ID' => execution_id,
42
+ 'GDC_LOG_DIRECTORY' => log_directory,
43
+ 'GDC_EXECUTION_LOG_PATH' => execution_log_path,
44
+ 'GDC_EXECUTION_RESULT_LOG_PATH' => execution_result_log_path
45
+ }
46
+
23
47
  brick_pipeline = GoodData::Bricks::Pipeline.send("#{brick_type}_pipeline")
24
48
  normal_params = get_brick_params(BRICK_PARAM_PREFIX)
25
49
  hidden_params = get_brick_params(HIDDEN_BRICK_PARAMS_PREFIX)
26
50
  params = normal_params.merge(hidden_params)
27
51
 
28
52
  params['values_to_mask'] = hidden_params.values
29
- commit_hash = ENV['GOODDATA_RUBY_COMMIT'] || ''
30
- execution_id = ENV['GDC_EXECUTION_ID']
31
53
  params['gooddata_ruby_commit'] = commit_hash
32
- params['GDC_LOG_DIRECTORY'] = ENV['GDC_LOG_DIRECTORY'] || '/tmp/'
54
+ params['GDC_LOG_DIRECTORY'] = log_directory
33
55
  params['GDC_EXECUTION_ID'] = execution_id
56
+ params['GDC_EXECUTION_LOG_PATH'] = execution_log_path
57
+ params['GDC_EXECUTION_RESULT_LOG_PATH'] = execution_result_log_path
58
+
34
59
  log.info "action=#{brick_type}_execution status=start commit_hash=#{commit_hash} execution_id=#{execution_id}"
35
60
  brick_pipeline.call(params)
61
+ rescue GoodData::LcmExecutionError => lcm_error
62
+ handle_error(execution_result_log_params, log, brick_type, lcm_error, lcm_error.summary_error)
36
63
  rescue Exception => e # rubocop:disable RescueException
37
- execution_log = GoodData.logger
38
- execution_log.error "Execution failed. Message: #{e.message}. Error: #{e}" unless execution_log.nil?
39
- log.info "action=#{brick_type}_execution status=failed commit_hash=#{commit_hash} execution_id=#{execution_id} exception=#{e}"
40
- raise
64
+ handle_error(execution_result_log_params, log, brick_type, e, e.to_s)
41
65
  end
@@ -29,6 +29,7 @@ def delete_project_by_title(title, projects, days = 14, force = false)
29
29
  p.title.match(title) && p.created < dead_line
30
30
  end
31
31
  filtered_projects.each do |project|
32
+ begin
32
33
  if force
33
34
  puts "Deleting: #{project.pid} - #{project.title} - #{project.created}"
34
35
  project_add = project.add
@@ -37,6 +38,9 @@ def delete_project_by_title(title, projects, days = 14, force = false)
37
38
  else
38
39
  puts "Would delete: #{project.pid} - #{project.title} - #{project.created}"
39
40
  end
41
+ rescue StandardError => ex
42
+ puts "Failed to delete project #{project.pid}, reason: #{ex}"
43
+ end
40
44
  end
41
45
  puts "#{filtered_projects.length} projects matching \"#{title}\" #{'would be ' unless force}deleted."
42
46
  end
@@ -86,7 +90,11 @@ def clean_up!(client, force, days)
86
90
  delete_project_by_title(/LCM spec Client With Conflicting LDM Changes/, projects, days, force)
87
91
  delete_project_by_title(/LCM spec master project/, projects, days, force)
88
92
  delete_project_by_title(/users brick load test/, projects, days, force)
89
- delete_project_by_title(/#transfer_processes and #transfer_schedules test/, projects, days, force)
93
+ delete_project_by_title(/transfer_processes and #transfer_schedules test/, projects, days, force)
94
+ delete_project_by_title(/DailyUse Project for gooddata-ruby integration tests/, projects, days, force)
95
+ delete_project_by_title(/^New project$/, projects, days, force)
96
+ delete_project_by_title(/RubyGem Dev Week test/, projects, days, force)
97
+ delete_project_by_title(/My project from blueprint/, projects, days, force)
90
98
  delete_ads_by_title(/Development ADS/, client, days, force)
91
99
  delete_ads_by_title(/Production ADS/, client, days, force)
92
100
  delete_ads_by_title(/TEST ADS/, client, days, force)
@@ -108,7 +116,7 @@ dev_client = init_client(username, password, "https://#{config[:dev_server]}")
108
116
  prod_client = init_client(username, password, "https://#{config[:prod_server]}")
109
117
 
110
118
  force = options[:force]
111
- days = options[:days] || 14
119
+ days = options[:days] || 3
112
120
  clean_up!(dev_client, force, days)
113
121
  clean_up!(prod_client, force, days)
114
122
 
@@ -1,3 +1,5 @@
1
1
  #!/usr/bin/env bash
2
2
 
3
+ export JRUBY_OPTS=-J-Xmx2560m
4
+
3
5
  /bin/bash -l -c "bundle exec ./bin/run_brick.rb user_filters_brick"
data/ci.rake CHANGED
@@ -1,7 +1,7 @@
1
1
  namespace :docker do
2
2
  desc 'Build Docker image'
3
3
  task :build do
4
- system('docker-compose build')
4
+ system('docker-compose build --no-cache')
5
5
  end
6
6
 
7
7
  desc 'Bundles gems using cache'
@@ -0,0 +1,54 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <project xmlns="http://maven.apache.org/POM/4.0.0"
3
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
5
+ <modelVersion>4.0.0</modelVersion>
6
+
7
+ <groupId>com.gooddata.lcm</groupId>
8
+ <artifactId>lcm-bigquery-driver</artifactId>
9
+ <version>1.0-SNAPSHOT</version>
10
+
11
+ <dependencies>
12
+ <dependency>
13
+ <groupId>com.google.auth</groupId>
14
+ <artifactId>google-auth-library-oauth2-http</artifactId>
15
+ <version>0.16.2</version>
16
+ </dependency>
17
+ <dependency>
18
+ <groupId>org.apache.commons</groupId>
19
+ <artifactId>commons-text</artifactId>
20
+ <version>1.7</version>
21
+ </dependency>
22
+ <dependency>
23
+ <groupId>com.google.cloud</groupId>
24
+ <artifactId>google-cloud-bigquery</artifactId>
25
+ <version>1.102.0</version>
26
+ </dependency>
27
+ </dependencies>
28
+
29
+ <profiles>
30
+ <profile>
31
+ <id>binary-packaging</id>
32
+ <build>
33
+ <plugins>
34
+ <plugin>
35
+ <artifactId>maven-dependency-plugin</artifactId>
36
+ <executions>
37
+ <execution>
38
+ <phase>package</phase>
39
+ <goals>
40
+ <goal>copy-dependencies</goal>
41
+ </goals>
42
+ <configuration>
43
+ <outputDirectory>${project.build.directory}</outputDirectory>
44
+ <!-- compile scope gives runtime and compile dependencies (skips test deps) -->
45
+ <includeScope>runtime</includeScope>
46
+ </configuration>
47
+ </execution>
48
+ </executions>
49
+ </plugin>
50
+ </plugins>
51
+ </build>
52
+ </profile>
53
+ </profiles>
54
+ </project>
@@ -0,0 +1,73 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <project xmlns="http://maven.apache.org/POM/4.0.0"
3
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
5
+ <modelVersion>4.0.0</modelVersion>
6
+
7
+ <groupId>com.gooddata.lcm</groupId>
8
+ <artifactId>lcm-redshift-driver</artifactId>
9
+ <version>1.0-SNAPSHOT</version>
10
+
11
+ <dependencies>
12
+ <dependency>
13
+ <groupId>com.amazon.redshift</groupId>
14
+ <artifactId>redshift-jdbc42-no-awssdk</artifactId>
15
+ <version>1.2.36.1060</version>
16
+ </dependency>
17
+ <dependency>
18
+ <groupId>com.amazonaws</groupId>
19
+ <artifactId>aws-java-sdk-core</artifactId>
20
+ <version>1.11.633</version>
21
+ </dependency>
22
+ <dependency>
23
+ <groupId>com.amazonaws</groupId>
24
+ <artifactId>aws-java-sdk-redshift</artifactId>
25
+ <version>1.11.633</version>
26
+ </dependency>
27
+ <dependency>
28
+ <groupId>com.amazonaws</groupId>
29
+ <artifactId>aws-java-sdk-sts</artifactId>
30
+ <version>1.11.633</version>
31
+ </dependency>
32
+ <dependency>
33
+ <groupId>log4j</groupId>
34
+ <artifactId>log4j</artifactId>
35
+ <version>1.2.17</version>
36
+ <scope>compile</scope>
37
+ </dependency>
38
+ </dependencies>
39
+
40
+ <profiles>
41
+ <profile>
42
+ <id>binary-packaging</id>
43
+ <build>
44
+ <plugins>
45
+ <plugin>
46
+ <artifactId>maven-dependency-plugin</artifactId>
47
+ <executions>
48
+ <execution>
49
+ <phase>package</phase>
50
+ <goals>
51
+ <goal>copy-dependencies</goal>
52
+ </goals>
53
+ <configuration>
54
+ <outputDirectory>${project.build.directory}</outputDirectory>
55
+ <!-- compile scope gives runtime and compile dependencies (skips test deps) -->
56
+ <includeScope>runtime</includeScope>
57
+ </configuration>
58
+ </execution>
59
+ </executions>
60
+ </plugin>
61
+ </plugins>
62
+ </build>
63
+ </profile>
64
+ </profiles>
65
+
66
+ <repositories>
67
+ <repository>
68
+ <id>my-repo1</id>
69
+ <name>my custom repo</name>
70
+ <url>https://repository.mulesoft.org/nexus/content/repositories/public/</url>
71
+ </repository>
72
+ </repositories>
73
+ </project>