nixenvironment 0.0.81 → 0.0.82

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0df4cc7c88289ab2ede054b02ee51bfa8ad2fbd3
4
- data.tar.gz: 974b2e06bb200e99abf558fa222bcfc13df1ecdc
3
+ metadata.gz: 6a9ab55b6ff41beef7bead9d609d3cd498f4507c
4
+ data.tar.gz: c2d3711028fa1e74f51c585c648b58760467243e
5
5
  SHA512:
6
- metadata.gz: 6834f84560438b839f32e975d0199f2352203652decf7ccae3ae541182d95e7d8b64ac822fad0fcc53fd56d66f31b31c5a5d7126585b9d60b95e9ac8fae443d7
7
- data.tar.gz: 8eac37bb4e6ecca60d279bf8b276a13ff4be4b0bf294b5c4fd921b58314d035190f15facef274ec129544d9471e2b90bfde5e2b9ca8ccbfea7a80c0b5e0dbcab
6
+ metadata.gz: d51e6eb9189c9e816e3c9e638cac16eeffd8b7b9957eca307bba5a8048aa7c2bc2473229732dc056150e870ac2b5b3c7de032c94497b33cfe49ac6cce59c7871
7
+ data.tar.gz: a0aa5a3216e2e21e6f940499e65496936c4361ae82939c9baa712de972ce55fea1c137ef9fb0a7e1b65586e627f4759910f46b59dcbeb26fe9d285f3897ea6e3
data/bin/nixenvironment CHANGED
@@ -173,38 +173,39 @@ command :deploy do |c|
173
173
  c.syntax = 'nixenvironment deploy'
174
174
  c.description = 'Deploy built artifacts to given server'
175
175
  c.option '--unity_platform TARGET PLATFORM', String, 'Select target platform for unity deploy (ios | macos | android | winphone)'
176
+ c.option '--deployment_names NAMES', String, 'Set names for mds buttons for each ipa type'
176
177
  c.option '--deliver_deploy', 'Not only verify but also submit the build on iTunes Connect. (resigned_appstore builds only)'
177
178
  c.action do |_args, options|
178
- return if ENV['SKIP_DEPLOY'].present?
179
-
180
- unity_platform = options.unity_platform
181
- need_to_deploy_ios = false
182
- need_to_deploy_macos_build = false
183
- need_to_deploy_winphone_build = false
184
-
185
- if unity_platform.present?
186
- case unity_platform
187
- when 'ios'
188
- Dir.chdir(UNITY_IOS_PROJECT_PATH)
189
- need_to_deploy_ios = true
190
- when 'macos'
191
- #Dir.chdir(UNITY_MACOS_PROJECT_PATH)
192
- need_to_deploy_macos_build = true
193
- when 'android'
194
- system(DEPLOY_APK_SCRIPT_PATH) ? success('Unity android deploy complete!') : error('Unity android deploy error!')
195
- when 'winphone'
196
- #Dir.chdir(UNITY_WINPHONE_PROJECT_PATH)
197
- need_to_deploy_winphone_build = true
198
- else
199
- error("Error: Unknown unity target platform '#{unity_platform}'!")
179
+ unless ENV['SKIP_DEPLOY'].present?
180
+ unity_platform = options.unity_platform
181
+ need_to_deploy_ios = false
182
+ need_to_deploy_macos_build = false
183
+ need_to_deploy_winphone_build = false
184
+
185
+ if unity_platform.present?
186
+ case unity_platform
187
+ when 'ios'
188
+ Dir.chdir(UNITY_IOS_PROJECT_PATH)
189
+ need_to_deploy_ios = true
190
+ when 'macos'
191
+ #Dir.chdir(UNITY_MACOS_PROJECT_PATH)
192
+ need_to_deploy_macos_build = true
193
+ when 'android'
194
+ system(DEPLOY_APK_SCRIPT_PATH) ? success('Unity android deploy complete!') : error('Unity android deploy error!')
195
+ when 'winphone'
196
+ #Dir.chdir(UNITY_WINPHONE_PROJECT_PATH)
197
+ need_to_deploy_winphone_build = true
198
+ else
199
+ error("Error: Unknown unity target platform '#{unity_platform}'!")
200
+ end
201
+ else
202
+ need_to_deploy_ios = true
200
203
  end
201
- else
202
- need_to_deploy_ios = true
203
- end
204
204
 
205
- if need_to_deploy_ios || need_to_deploy_macos_build
206
- read_config_settings
207
- deploy(options.deliver_deploy)
205
+ if need_to_deploy_ios || need_to_deploy_macos_build
206
+ read_config_settings
207
+ deploy(options.deliver_deploy, options.deployment_names)
208
+ end
208
209
  end
209
210
  end
210
211
  end
@@ -689,7 +690,7 @@ def restore_info_plist(product_settings_path, info_plist_backup_name, descriptio
689
690
  puts "#{description}Info.plist was restored."
690
691
  end
691
692
 
692
- def deploy(deliver_deploy)
693
+ def deploy(deliver_deploy, deployment_names)
693
694
  deploy_host = @config_settings[DEPLOY_HOST_KEY].blank? ? ENV[DEPLOY_HOST_KEY] : @config_settings[DEPLOY_HOST_KEY]
694
695
  deploy_username = @config_settings[DEPLOY_USERNAME_KEY].blank? ? ENV[DEPLOY_USERNAME_KEY] : @config_settings[DEPLOY_USERNAME_KEY]
695
696
  deploy_password = @config_settings[DEPLOY_PASSWORD_KEY].blank? ? ENV[DEPLOY_PASSWORD_KEY] : @config_settings[DEPLOY_PASSWORD_KEY]
@@ -699,7 +700,7 @@ def deploy(deliver_deploy)
699
700
 
700
701
  deploy_path = sdk_name.include?('macos') ? MACOS_PROJECTS_DEPLOY_PATH : ENV[DEPLOY_PATH_KEY]
701
702
  deploy_path = @config_settings[DEPLOY_PATH_KEY] if @config_settings[DEPLOY_PATH_KEY].present?
702
- Deployer.deploy(deploy_host, deploy_path, deploy_username, deploy_password, deploy_itunesconnect_username, deliver_deploy)
703
+ Deployer.deploy(deploy_host, deploy_path, deploy_username, deploy_password, deploy_itunesconnect_username, deliver_deploy, deployment_names)
703
704
 
704
705
  success('Deploy complete!')
705
706
  end
@@ -35,19 +35,19 @@ module Nixenvironment
35
35
 
36
36
  class << self
37
37
  def make_signed_ipa
38
- make_ipa(PROFILE_TYPE_DEVELOPER, nil, 'IPA_PRODUCT', 'IPA_BUNDLE_ID', 'NAME_FOR_DEPLOYMENT')
38
+ make_ipa(PROFILE_TYPE_DEVELOPER, nil, IPA_PRODUCT_KEY, IPA_BUNDLE_ID_KEY, NAME_FOR_DEPLOYMENT_KEY)
39
39
  end
40
40
 
41
41
  def make_resigned_ipa_for_device
42
- make_ipa(PROFILE_TYPE_DEVELOPER, '-Resigned', 'IPA_PRODUCT_RESIGNED_DEVICE', 'IPA_BUNDLE_ID_RESIGNED_DEVICE', 'NAME_FOR_DEPLOYMENT_RESIGNED_DEVICE')
42
+ make_ipa(PROFILE_TYPE_DEVELOPER, '-Resigned', IPA_PRODUCT_RESIGNED_DEVICE_KEY, IPA_BUNDLE_ID_RESIGNED_DEVICE_KEY, NAME_FOR_DEPLOYMENT_RESIGNED_DEVICE_KEY)
43
43
  end
44
44
 
45
45
  def make_resigned_ipa_for_adhoc
46
- make_ipa(PROFILE_TYPE_ADHOC, '-Resigned-AdHoc', 'IPA_PRODUCT_RESIGNED_ADHOC', 'IPA_BUNDLE_ID_RESIGNED_ADHOC', 'NAME_FOR_DEPLOYMENT_RESIGNED_ADHOC')
46
+ make_ipa(PROFILE_TYPE_ADHOC, '-Resigned-AdHoc', IPA_PRODUCT_RESIGNED_ADHOC_KEY, IPA_BUNDLE_ID_RESIGNED_ADHOC_KEY, NAME_FOR_DEPLOYMENT_RESIGNED_ADHOC_KEY)
47
47
  end
48
48
 
49
49
  def make_resigned_ipa_for_appstore
50
- make_ipa(PROFILE_TYPE_APPSTORE, '-Resigned-Appstore', 'IPA_PRODUCT_RESIGNED_APPSTORE', 'IPA_BUNDLE_ID_RESIGNED_APPSTORE', 'NAME_FOR_DEPLOYMENT_RESIGNED_APPSTORE')
50
+ make_ipa(PROFILE_TYPE_APPSTORE, '-Resigned-Appstore', IPA_PRODUCT_RESIGNED_APPSTORE_KEY, IPA_BUNDLE_ID_RESIGNED_APPSTORE_KEY, NAME_FOR_DEPLOYMENT_RESIGNED_APPSTORE_KEY)
51
51
  end
52
52
 
53
53
  def make_macos_zip
@@ -86,9 +86,9 @@ module Nixenvironment
86
86
  ipa_bundle_id = get_bundle_id(File.join(app_product, 'Contents'))
87
87
 
88
88
  system("echo \"\n
89
- IPA_PRODUCT='#{new_ipa_path}'
90
- IPA_BUNDLE_ID='#{ipa_bundle_id}'
91
- NAME_FOR_DEPLOYMENT='#{configuration}'
89
+ #{IPA_PRODUCT_KEY}='#{new_ipa_path}'
90
+ #{IPA_BUNDLE_ID_KEY}='#{ipa_bundle_id}'
91
+ #{NAME_FOR_DEPLOYMENT_KEY}='#{configuration}'
92
92
  \" >> #{AUTOGENERATED_LAST_BUILD_VARS}")
93
93
  end
94
94
 
@@ -92,24 +92,32 @@ module Nixenvironment
92
92
  PROJECT_TO_BUILD_KEY = 'PROJECT_TO_BUILD'
93
93
  PROJECT_TARGET_TO_BUILD_KEY = 'PROJECT_TARGET_TO_BUILD'
94
94
  PROJECT_TARGET_TO_TEST_KEY = 'PROJECT_TARGET_TO_TEST'
95
+
95
96
  WORKSPACE_TO_BUILD_KEY = 'WORKSPACE_TO_BUILD'
96
97
  WORKSPACE_SCHEME_TO_BUILD_KEY = 'WORKSPACE_SCHEME_TO_BUILD'
97
98
  WORKSPACE_SCHEME_TO_TEST_KEY = 'WORKSPACE_SCHEME_TO_TEST'
99
+
98
100
  SDK_KEY = 'SDK'
99
101
  SDK_FOR_TESTS_KEY = 'SDK_FOR_TESTS'
102
+
100
103
  EXCLUDE_PATTERN_FOR_CODE_COVERAGE_KEY = 'EXCLUDE_PATTERN_FOR_CODE_COVERAGE'
101
104
  EXCLUDE_PATTERN_FOR_CODE_DUPLICATION_KEY = 'EXCLUDE_PATTERN_FOR_CODE_DUPLICATION'
105
+
102
106
  DEPLOY_HOST_KEY = 'DEPLOY_HOST'
103
107
  DEPLOY_PATH_KEY = 'DEPLOY_PATH'
104
108
  DEPLOY_USERNAME_KEY = 'DEPLOY_USERNAME'
105
109
  DEPLOY_PASSWORD_KEY = 'DEPLOY_PASSWORD'
106
110
  DEPLOY_ITUNESCONNECT_USERNAME_KEY = 'DEPLOY_ITUNESCONNECT_USERNAME'
111
+
107
112
  ICONS_PATH_KEY = 'ICONS_PATH'
108
113
  XCTEST_DESTINATION_DEVICE_KEY = 'XCTEST_DESTINATION_DEVICE'
109
114
  CONFIGURATION_FILES_PATH_KEY = 'CONFIGURATION_FILES_PATH'
115
+
110
116
  CODE_COVERAGE_CONFIGURATION_KEY = 'CODE_COVERAGE_CONFIGURATION'
111
117
  CODE_COVERAGE_OUTPUT_DIRECTORY_KEY = 'CODE_COVERAGE_OUTPUT_DIRECTORY'
118
+
112
119
  ENV_VAR_PREFIX_KEY = 'ENV_VAR_PREFIX'
120
+
113
121
  BUNDLE_ID_KEY = 'BUNDLE_ID'
114
122
  RESIGNED_BUNDLE_ID_KEY = 'RESIGNED_BUNDLE_ID'
115
123
  RESIGNED_WATCHKIT_APP_BUNDLE_ID_KEY = 'RESIGNED_WATCHKIT_APP_BUNDLE_ID'
@@ -133,14 +141,29 @@ module Nixenvironment
133
141
  CONFIGURATION_KEY = 'CONFIGURATION'
134
142
  APP_PRODUCT_KEY = 'APP_PRODUCT'
135
143
  SDK_NAME_KEY = 'SDK_NAME'
136
- IPA_BUNDLE_ID_KEY = 'IPA_BUNDLE_ID'
144
+
137
145
  CURRENT_APP_VERSION_KEY = 'CURRENT_APP_VERSION'
138
146
  CURRENT_BUILD_VERSION_KEY = 'CURRENT_BUILD_VERSION'
147
+
148
+ IPA_BUNDLE_ID_KEY = 'IPA_BUNDLE_ID'
149
+ IPA_BUNDLE_ID_RESIGNED_DEVICE_KEY = 'IPA_BUNDLE_ID_RESIGNED_DEVICE'
150
+ IPA_BUNDLE_ID_RESIGNED_ADHOC_KEY = 'IPA_BUNDLE_ID_RESIGNED_ADHOC'
151
+ IPA_BUNDLE_ID_RESIGNED_APPSTORE_KEY = 'IPA_BUNDLE_ID_RESIGNED_APPSTORE'
152
+
139
153
  NAME_FOR_DEPLOYMENT_KEY = 'NAME_FOR_DEPLOYMENT'
154
+ NAME_FOR_DEPLOYMENT_RESIGNED_DEVICE_KEY = 'NAME_FOR_DEPLOYMENT_RESIGNED_DEVICE'
155
+ NAME_FOR_DEPLOYMENT_RESIGNED_ADHOC_KEY = 'NAME_FOR_DEPLOYMENT_RESIGNED_ADHOC'
156
+ NAME_FOR_DEPLOYMENT_RESIGNED_APPSTORE_KEY = 'NAME_FOR_DEPLOYMENT_RESIGNED_APPSTORE'
157
+
140
158
  IPA_PRODUCT_KEY = 'IPA_PRODUCT'
159
+ IPA_PRODUCT_RESIGNED_DEVICE_KEY = 'IPA_PRODUCT_RESIGNED_DEVICE'
160
+ IPA_PRODUCT_RESIGNED_ADHOC_KEY = 'IPA_PRODUCT_RESIGNED_ADHOC'
161
+ IPA_PRODUCT_RESIGNED_APPSTORE_KEY = 'IPA_PRODUCT_RESIGNED_APPSTORE'
162
+
141
163
  APP_DSYM_KEY = 'APP_DSYM'
142
164
  SCM_USERNAME_KEY = 'SCM_USERNAME'
143
165
  SCM_PASSWORD_KEY = 'SCM_PASSWORD'
166
+
144
167
  WATCHKIT_EXTENSION_PRODUCT_SETTINGS_PATH_KEY = 'WATCHKIT_EXTENSION_' + PRODUCT_SETTINGS_PATH_KEY
145
168
  WATCHKIT_APP_PRODUCT_SETTINGS_PATH_KEY = 'WATCHKIT_APP_' + PRODUCT_SETTINGS_PATH_KEY
146
169
  WIDGET_PRODUCT_SETTINGS_PATH_KEY = 'WIDGET_' + PRODUCT_SETTINGS_PATH_KEY
@@ -3,31 +3,68 @@ require 'colorize'
3
3
 
4
4
  module Nixenvironment
5
5
  class Deployer
6
- def self.deploy(deploy_host, deploy_dir, deploy_user, deploy_password, deploy_itunesconnect_user, deliver_deploy)
6
+ def self.deploy(deploy_host, deploy_dir, deploy_user, deploy_password, deploy_itunesconnect_user, deliver_deploy, deployment_names)
7
7
  build_env_vars = BuildEnvVarsLoader.load
8
8
  raise 'Error! Working copy is not clean!' unless BuildEnvVarsLoader.working_copy_is_clean?
9
9
 
10
10
  ipa_product = build_env_vars[IPA_PRODUCT_KEY]
11
- ipa_product_resigned_device = build_env_vars['IPA_PRODUCT_RESIGNED_DEVICE']
12
- ipa_product_resigned_adhoc = build_env_vars['IPA_PRODUCT_RESIGNED_ADHOC']
13
- ipa_product_resigned_appstore = build_env_vars['IPA_PRODUCT_RESIGNED_APPSTORE']
11
+ ipa_product_resigned_device = build_env_vars[IPA_PRODUCT_RESIGNED_DEVICE_KEY]
12
+ ipa_product_resigned_adhoc = build_env_vars[IPA_PRODUCT_RESIGNED_ADHOC_KEY]
13
+ ipa_product_resigned_appstore = build_env_vars[IPA_PRODUCT_RESIGNED_APPSTORE_KEY]
14
14
 
15
15
  ipa_bundle_id = build_env_vars[IPA_BUNDLE_ID_KEY]
16
- ipa_bundle_id_resigned_device = build_env_vars['IPA_BUNDLE_ID_RESIGNED_DEVICE']
17
- ipa_bundle_id_resigned_adhoc = build_env_vars['IPA_BUNDLE_ID_RESIGNED_ADHOC']
18
- ipa_bundle_id_resigned_appstore = build_env_vars['IPA_BUNDLE_ID_RESIGNED_APPSTORE']
16
+ ipa_bundle_id_resigned_device = build_env_vars[IPA_BUNDLE_ID_RESIGNED_DEVICE_KEY]
17
+ ipa_bundle_id_resigned_adhoc = build_env_vars[IPA_BUNDLE_ID_RESIGNED_ADHOC_KEY]
18
+ ipa_bundle_id_resigned_appstore = build_env_vars[IPA_BUNDLE_ID_RESIGNED_APPSTORE_KEY]
19
19
 
20
20
  current_app_version = build_env_vars[CURRENT_APP_VERSION_KEY]
21
21
  current_build_version = build_env_vars[CURRENT_BUILD_VERSION_KEY]
22
22
 
23
23
  name_for_deployment = build_env_vars[NAME_FOR_DEPLOYMENT_KEY]
24
- name_for_deployment_resigned_device = build_env_vars['NAME_FOR_DEPLOYMENT_RESIGNED_DEVICE']
25
- name_for_deployment_resigned_adhoc = build_env_vars['NAME_FOR_DEPLOYMENT_RESIGNED_ADHOC']
26
- name_for_deployment_resigned_appstore = build_env_vars['NAME_FOR_DEPLOYMENT_RESIGNED_APPSTORE']
24
+ name_for_deployment_resigned_device = build_env_vars[NAME_FOR_DEPLOYMENT_RESIGNED_DEVICE_KEY]
25
+ name_for_deployment_resigned_adhoc = build_env_vars[NAME_FOR_DEPLOYMENT_RESIGNED_ADHOC_KEY]
26
+ name_for_deployment_resigned_appstore = build_env_vars[NAME_FOR_DEPLOYMENT_RESIGNED_APPSTORE_KEY]
27
27
 
28
- executable_name = build_env_vars[EXECUTABLE_NAME_KEY]
29
- app_dsym = build_env_vars[APP_DSYM_KEY]
30
- sdk = build_env_vars[SDK_NAME_KEY]
28
+ if deployment_names.present?
29
+ names = deployment_names.scan(/(?:\w|'[^']*')+/).map! {|name| name.tr("'", '')}
30
+
31
+ ipas_count = 0
32
+ ipas_count += 1 if name_for_deployment.present?
33
+ ipas_count += 1 if name_for_deployment_resigned_device.present?
34
+ ipas_count += 1 if name_for_deployment_resigned_adhoc.present?
35
+ ipas_count += 1 if name_for_deployment_resigned_appstore.present?
36
+
37
+ raise 'Deployment names count does not match ipa files count!' if ipas_count != names.count
38
+
39
+ ipa_index = 0
40
+
41
+ if name_for_deployment.present?
42
+ deployment_name = names[ipa_index]
43
+ name_for_deployment = deployment_name if deployment_name != '_'
44
+ ipa_index += 1
45
+ end
46
+
47
+ if name_for_deployment_resigned_device.present?
48
+ deployment_name = names[ipa_index]
49
+ name_for_deployment_resigned_device = deployment_name if deployment_name != '_'
50
+ ipa_index += 1
51
+ end
52
+
53
+ if name_for_deployment_resigned_adhoc.present?
54
+ deployment_name = names[ipa_index]
55
+ name_for_deployment_resigned_adhoc = deployment_name if deployment_name != '_'
56
+ ipa_index += 1
57
+ end
58
+
59
+ if name_for_deployment_resigned_appstore.present?
60
+ deployment_name = names[ipa_index]
61
+ name_for_deployment_resigned_appstore = deployment_name if deployment_name != '_'
62
+ end
63
+ end
64
+
65
+ executable_name = build_env_vars[EXECUTABLE_NAME_KEY]
66
+ app_dsym = build_env_vars[APP_DSYM_KEY]
67
+ sdk = build_env_vars[SDK_NAME_KEY]
31
68
 
32
69
  ipa_count = 0
33
70
 
@@ -1,3 +1,3 @@
1
1
  module Nixenvironment
2
- VERSION = '0.0.81'
2
+ VERSION = '0.0.82'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nixenvironment
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.81
4
+ version: 0.0.82
5
5
  platform: ruby
6
6
  authors:
7
7
  - Karen
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2016-02-18 00:00:00.000000000 Z
12
+ date: 2016-03-02 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: cocoapods