fastlane-plugin-google_drive 0.9.0 → 0.10.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +6 -6
- data/lib/fastlane/plugin/google_drive/actions/create_google_drive_folder_action.rb +62 -32
- data/lib/fastlane/plugin/google_drive/actions/find_google_drive_file_by_id_action.rb +26 -5
- data/lib/fastlane/plugin/google_drive/actions/find_google_drive_file_by_title_action.rb +26 -5
- data/lib/fastlane/plugin/google_drive/actions/update_google_drive_file_action.rb +62 -32
- data/lib/fastlane/plugin/google_drive/actions/upload_to_google_drive_action.rb +73 -41
- data/lib/fastlane/plugin/google_drive/helper/google_drive_helper.rb +6 -3
- data/lib/fastlane/plugin/google_drive/version.rb +1 -1
- metadata +17 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 95915a684767c4d65c40e26820aad4d29579adca45710cab0a5ff555cf1c7624
|
4
|
+
data.tar.gz: 2dd1a39283b55295292112371d91f1c9a4e8e0450226e15f9492f8af4a4078a6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a285dd2f1557c1e847c190e546b2ebdacb91ff725829d66c074299b205fadea6b419ecc2762a9307731367823256e1d4d5c122cce2be314611fae37b61916851
|
7
|
+
data.tar.gz: ff88fbe7ea37e1561f383c15385b00ced9f956b11b590a72aa66768dc2675e7460497bc9f255db168453e9cca1354a05264288520b95963297974f86a33451ee
|
data/README.md
CHANGED
@@ -1,10 +1,9 @@
|
|
1
1
|
# google_drive `fastlane` plugin
|
2
2
|
|
3
3
|
[](https://rubygems.org/gems/fastlane-plugin-google_drive)
|
4
|
-
[](https://badge.fury.io/rb/fastlane-plugin-google_drive)
|
5
|
+

|
6
6
|
[](https://codeclimate.com/github/bskim45/fastlane-plugin-google_drive/test_coverage)
|
7
|
-
[](https://hakiri.io/github/bskim45/fastlane-plugin-google_drive/master)
|
8
7
|
|
9
8
|
## Getting Started
|
10
9
|
|
@@ -16,14 +15,15 @@ fastlane add_plugin google_drive
|
|
16
15
|
|
17
16
|
## About google_drive
|
18
17
|
|
19
|
-
> Please refer to [this guide](https://github.com/gimite/google-drive-ruby/blob/master/doc/authorization.md) to create
|
18
|
+
> Please refer to [this guide](https://github.com/gimite/google-drive-ruby/blob/master/doc/authorization.md) to create a Google Drive credential.
|
20
19
|
|
21
20
|
Upload files to Google Drive folder.
|
22
|
-
> Aliases for this action - `google_drive_upload` and `upload_google_drive` are both removed in `v0.6.0`.
|
23
21
|
|
24
22
|
```ruby
|
25
23
|
upload_to_google_drive(
|
26
24
|
drive_keyfile: 'drive_key.json',
|
25
|
+
# or you can provide the content of JSON keyfile directly as an argument
|
26
|
+
# drive_key_json: __KEYFILE_CONTENT__,
|
27
27
|
service_account: true,
|
28
28
|
folder_id: 'folder_id',
|
29
29
|
upload_files: ['file_to_upload', 'another_file_to_upload']
|
@@ -107,4 +107,4 @@ _fastlane_ is the easiest way to automate beta deployments and releases for your
|
|
107
107
|
|
108
108
|
The MIT License (MIT)
|
109
109
|
|
110
|
-
Copyright (c)
|
110
|
+
Copyright (c) 2022 Bumsoo Kim (<https://bsk.im>)
|
@@ -7,12 +7,16 @@ module Fastlane
|
|
7
7
|
GDRIVE_CREATED_FOLDER_ID = :GDRIVE_CREATED_FOLDER_ID
|
8
8
|
GDRIVE_CREATED_FOLDER_URL = :GDRIVE_CREATED_FOLDER_URL
|
9
9
|
end
|
10
|
+
|
10
11
|
class CreateGoogleDriveFolderAction < Action
|
11
12
|
def self.run(params)
|
12
|
-
|
13
|
+
unless params[:drive_keyfile].nil?
|
14
|
+
UI.message("Using credential file: #{params[:drive_keyfile]}")
|
15
|
+
end
|
13
16
|
|
14
17
|
session = Helper::GoogleDriveHelper.setup(
|
15
18
|
keyfile: params[:drive_keyfile],
|
19
|
+
key_json: params[:drive_key_json],
|
16
20
|
service_account: params[:service_account]
|
17
21
|
)
|
18
22
|
|
@@ -47,36 +51,62 @@ module Fastlane
|
|
47
51
|
|
48
52
|
def self.available_options
|
49
53
|
[
|
50
|
-
FastlaneCore::ConfigItem.new(
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
54
|
+
FastlaneCore::ConfigItem.new(
|
55
|
+
key: :drive_keyfile,
|
56
|
+
env_names: ['GDRIVE_KEY_FILE', 'GOOGLE_APPLICATION_CREDENTIALS'],
|
57
|
+
description: 'Path to the JSON keyfile',
|
58
|
+
conflicting_options: [:drive_key_json],
|
59
|
+
type: String,
|
60
|
+
optional: true,
|
61
|
+
verify_block: proc do |value|
|
62
|
+
UI.user_error!("Couldn't find config keyfile at path '#{value}'") unless File.exist?(value)
|
63
|
+
UI.user_error!("'#{value}' doesn't seem to be a valid JSON keyfile") unless FastlaneCore::Helper.json_file?(value)
|
64
|
+
end
|
65
|
+
),
|
66
|
+
FastlaneCore::ConfigItem.new(
|
67
|
+
key: :drive_key_json,
|
68
|
+
env_name: 'GDRIVE_KEY_JSON',
|
69
|
+
description: 'Credential key in stringified JSON format',
|
70
|
+
optional: true,
|
71
|
+
conflicting_options: [:drive_keyfile],
|
72
|
+
type: String,
|
73
|
+
sensitive: true,
|
74
|
+
verify_block: proc do |value|
|
75
|
+
begin
|
76
|
+
JSON.parse(value)
|
77
|
+
rescue JSON::ParserError
|
78
|
+
UI.user_error!("Provided credential key is not a valid JSON")
|
79
|
+
end
|
80
|
+
end
|
81
|
+
),
|
82
|
+
FastlaneCore::ConfigItem.new(
|
83
|
+
key: :service_account,
|
84
|
+
env_name: 'GDRIVE_SERVICE_ACCOUNT',
|
85
|
+
description: 'true if the credential is for a service account, false otherwise',
|
86
|
+
optional: true,
|
87
|
+
is_string: false,
|
88
|
+
default_value: false
|
89
|
+
),
|
90
|
+
FastlaneCore::ConfigItem.new(
|
91
|
+
key: :folder_id,
|
92
|
+
env_name: "GDRIVE_UPLOAD_FOLDER_ID",
|
93
|
+
description: "Upload target folder id",
|
94
|
+
optional: false,
|
95
|
+
type: String,
|
96
|
+
verify_block: proc do |value|
|
97
|
+
UI.user_error!("No target `folder_id` was provided. Pass it using `folder_id: 'some_id'`") unless value and !value.empty?
|
98
|
+
end
|
99
|
+
),
|
100
|
+
FastlaneCore::ConfigItem.new(
|
101
|
+
key: :folder_title,
|
102
|
+
env_name: "GDRIVE_FOLDER_NAME",
|
103
|
+
description: "Folder title of new one",
|
104
|
+
optional: false,
|
105
|
+
type: String,
|
106
|
+
verify_block: proc do |value|
|
107
|
+
UI.user_error!("No folder title given") if value.nil? || value.empty?
|
108
|
+
end
|
109
|
+
)
|
80
110
|
]
|
81
111
|
end
|
82
112
|
|
@@ -92,7 +122,7 @@ module Fastlane
|
|
92
122
|
end
|
93
123
|
|
94
124
|
def self.authors
|
95
|
-
['Kohki Miki (@giginet)']
|
125
|
+
['Bumsoo Kim (@bskim45)', 'Kohki Miki (@giginet)']
|
96
126
|
end
|
97
127
|
|
98
128
|
def self.is_supported?(platform)
|
@@ -11,10 +11,13 @@ module Fastlane
|
|
11
11
|
|
12
12
|
class FindGoogleDriveFileByIdAction < Action
|
13
13
|
def self.run(params)
|
14
|
-
|
14
|
+
unless params[:drive_keyfile].nil?
|
15
|
+
UI.message("Using credential file: #{params[:drive_keyfile]}")
|
16
|
+
end
|
15
17
|
|
16
18
|
session = Helper::GoogleDriveHelper.setup(
|
17
19
|
keyfile: params[:drive_keyfile],
|
20
|
+
key_json: params[:drive_key_json],
|
18
21
|
service_account: params[:service_account]
|
19
22
|
)
|
20
23
|
|
@@ -53,18 +56,36 @@ module Fastlane
|
|
53
56
|
[
|
54
57
|
FastlaneCore::ConfigItem.new(
|
55
58
|
key: :drive_keyfile,
|
56
|
-
|
57
|
-
description: '
|
59
|
+
env_names: ['GDRIVE_KEY_FILE', 'GOOGLE_APPLICATION_CREDENTIALS'],
|
60
|
+
description: 'Path to the JSON keyfile',
|
61
|
+
conflicting_options: [:drive_key_json],
|
58
62
|
type: String,
|
59
|
-
|
63
|
+
optional: true,
|
60
64
|
verify_block: proc do |value|
|
61
65
|
UI.user_error!("Couldn't find config keyfile at path '#{value}'") unless File.exist?(value)
|
66
|
+
UI.user_error!("'#{value}' doesn't seem to be a valid JSON keyfile") unless FastlaneCore::Helper.json_file?(value)
|
67
|
+
end
|
68
|
+
),
|
69
|
+
FastlaneCore::ConfigItem.new(
|
70
|
+
key: :drive_key_json,
|
71
|
+
env_name: 'GDRIVE_KEY_JSON',
|
72
|
+
description: 'Credential key in stringified JSON format',
|
73
|
+
optional: true,
|
74
|
+
conflicting_options: [:drive_keyfile],
|
75
|
+
type: String,
|
76
|
+
sensitive: true,
|
77
|
+
verify_block: proc do |value|
|
78
|
+
begin
|
79
|
+
JSON.parse(value)
|
80
|
+
rescue JSON::ParserError
|
81
|
+
UI.user_error!("Provided credential key is not a valid JSON")
|
82
|
+
end
|
62
83
|
end
|
63
84
|
),
|
64
85
|
FastlaneCore::ConfigItem.new(
|
65
86
|
key: :service_account,
|
66
87
|
env_name: 'GDRIVE_SERVICE_ACCOUNT',
|
67
|
-
description: '
|
88
|
+
description: 'true if the credential is for a service account, false otherwise',
|
68
89
|
optional: true,
|
69
90
|
is_string: false,
|
70
91
|
default_value: false
|
@@ -8,10 +8,13 @@ module Fastlane
|
|
8
8
|
|
9
9
|
class FindGoogleDriveFileByTitleAction < Action
|
10
10
|
def self.run(params)
|
11
|
-
|
11
|
+
unless params[:drive_keyfile].nil?
|
12
|
+
UI.message("Using credential file: #{params[:drive_keyfile]}")
|
13
|
+
end
|
12
14
|
|
13
15
|
session = Helper::GoogleDriveHelper.setup(
|
14
16
|
keyfile: params[:drive_keyfile],
|
17
|
+
key_json: params[:drive_key_json],
|
15
18
|
service_account: params[:service_account]
|
16
19
|
)
|
17
20
|
|
@@ -57,18 +60,36 @@ module Fastlane
|
|
57
60
|
[
|
58
61
|
FastlaneCore::ConfigItem.new(
|
59
62
|
key: :drive_keyfile,
|
60
|
-
|
61
|
-
description: '
|
63
|
+
env_names: ['GDRIVE_KEY_FILE', 'GOOGLE_APPLICATION_CREDENTIALS'],
|
64
|
+
description: 'Path to the JSON keyfile',
|
65
|
+
conflicting_options: [:drive_key_json],
|
62
66
|
type: String,
|
63
|
-
|
67
|
+
optional: true,
|
64
68
|
verify_block: proc do |value|
|
65
69
|
UI.user_error!("Couldn't find config keyfile at path '#{value}'") unless File.exist?(value)
|
70
|
+
UI.user_error!("'#{value}' doesn't seem to be a valid JSON keyfile") unless FastlaneCore::Helper.json_file?(value)
|
71
|
+
end
|
72
|
+
),
|
73
|
+
FastlaneCore::ConfigItem.new(
|
74
|
+
key: :drive_key_json,
|
75
|
+
env_name: 'GDRIVE_KEY_JSON',
|
76
|
+
description: 'Credential key in stringified JSON format',
|
77
|
+
optional: true,
|
78
|
+
conflicting_options: [:drive_keyfile],
|
79
|
+
type: String,
|
80
|
+
sensitive: true,
|
81
|
+
verify_block: proc do |value|
|
82
|
+
begin
|
83
|
+
JSON.parse(value)
|
84
|
+
rescue JSON::ParserError
|
85
|
+
UI.user_error!("Provided credential key is not a valid JSON")
|
86
|
+
end
|
66
87
|
end
|
67
88
|
),
|
68
89
|
FastlaneCore::ConfigItem.new(
|
69
90
|
key: :service_account,
|
70
91
|
env_name: 'GDRIVE_SERVICE_ACCOUNT',
|
71
|
-
description: '
|
92
|
+
description: 'true if the credential is for a service account, false otherwise',
|
72
93
|
optional: true,
|
73
94
|
is_string: false,
|
74
95
|
default_value: false
|
@@ -7,12 +7,16 @@ module Fastlane
|
|
7
7
|
GDRIVE_UPDATED_FILE_NAME = :GDRIVE_UPDATED_FILE_NAME
|
8
8
|
GDRIVE_UPDATED_FILE_URL = :GDRIVE_UPDATED_FILE_URL
|
9
9
|
end
|
10
|
+
|
10
11
|
class UpdateGoogleDriveFileAction < Action
|
11
12
|
def self.run(params)
|
12
|
-
|
13
|
+
unless params[:drive_keyfile].nil?
|
14
|
+
UI.message("Using credential file: #{params[:drive_keyfile]}")
|
15
|
+
end
|
13
16
|
|
14
17
|
session = Helper::GoogleDriveHelper.setup(
|
15
18
|
keyfile: params[:drive_keyfile],
|
19
|
+
key_json: params[:drive_key_json],
|
16
20
|
service_account: params[:service_account]
|
17
21
|
)
|
18
22
|
|
@@ -46,37 +50,63 @@ module Fastlane
|
|
46
50
|
|
47
51
|
def self.available_options
|
48
52
|
[
|
49
|
-
FastlaneCore::ConfigItem.new(
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
53
|
+
FastlaneCore::ConfigItem.new(
|
54
|
+
key: :drive_keyfile,
|
55
|
+
env_names: ['GDRIVE_KEY_FILE', 'GOOGLE_APPLICATION_CREDENTIALS'],
|
56
|
+
description: 'Path to the JSON keyfile',
|
57
|
+
conflicting_options: [:drive_key_json],
|
58
|
+
type: String,
|
59
|
+
optional: true,
|
60
|
+
verify_block: proc do |value|
|
61
|
+
UI.user_error!("Couldn't find config keyfile at path '#{value}'") unless File.exist?(value)
|
62
|
+
UI.user_error!("'#{value}' doesn't seem to be a valid JSON keyfile") unless FastlaneCore::Helper.json_file?(value)
|
63
|
+
end
|
64
|
+
),
|
65
|
+
FastlaneCore::ConfigItem.new(
|
66
|
+
key: :drive_key_json,
|
67
|
+
env_name: 'GDRIVE_KEY_JSON',
|
68
|
+
description: 'Credential key in stringified JSON format',
|
69
|
+
optional: true,
|
70
|
+
conflicting_options: [:drive_keyfile],
|
71
|
+
type: String,
|
72
|
+
sensitive: true,
|
73
|
+
verify_block: proc do |value|
|
74
|
+
begin
|
75
|
+
JSON.parse(value)
|
76
|
+
rescue JSON::ParserError
|
77
|
+
UI.user_error!("Provided credential key is not a valid JSON")
|
78
|
+
end
|
79
|
+
end
|
80
|
+
),
|
81
|
+
FastlaneCore::ConfigItem.new(
|
82
|
+
key: :service_account,
|
83
|
+
env_name: 'GDRIVE_SERVICE_ACCOUNT',
|
84
|
+
description: 'true if the credential is for a service account, false otherwise',
|
85
|
+
optional: true,
|
86
|
+
is_string: false,
|
87
|
+
default_value: false
|
88
|
+
),
|
89
|
+
FastlaneCore::ConfigItem.new(
|
90
|
+
key: :file_id,
|
91
|
+
env_name: "GDRIVE_UPDATE_FILE_ID",
|
92
|
+
description: "Target file id to update the content",
|
93
|
+
optional: false,
|
94
|
+
type: String,
|
95
|
+
verify_block: proc do |value|
|
96
|
+
UI.user_error!("No target `file_id` is provided. Pass it using `file_id: 'some_id'`") unless value and !value.empty?
|
97
|
+
end
|
98
|
+
),
|
99
|
+
FastlaneCore::ConfigItem.new(
|
100
|
+
key: :upload_file,
|
101
|
+
env_name: "GDRIVE_UPLOAD_FILE",
|
102
|
+
description: "Path to a file to be uploaded",
|
103
|
+
optional: false,
|
104
|
+
is_string: false,
|
105
|
+
verify_block: proc do |value|
|
106
|
+
UI.user_error!("No upload file is given, pass using `upload_file: 'some/path/a.txt'`") unless value and !value.empty?
|
107
|
+
UI.user_error!("Couldn't find upload file at path '#{value}'") unless File.exist?(value)
|
108
|
+
end
|
109
|
+
)
|
80
110
|
]
|
81
111
|
end
|
82
112
|
|
@@ -7,12 +7,16 @@ module Fastlane
|
|
7
7
|
GDRIVE_UPLOADED_FILE_NAMES = :GDRIVE_UPLOADED_FILE_NAMES
|
8
8
|
GDRIVE_UPLOADED_FILE_URLS = :GDRIVE_UPLOADED_FILE_URLS
|
9
9
|
end
|
10
|
+
|
10
11
|
class UploadToGoogleDriveAction < Action
|
11
12
|
def self.run(params)
|
12
|
-
|
13
|
+
unless params[:drive_keyfile].nil?
|
14
|
+
UI.message("Using credential file: #{params[:drive_keyfile]}")
|
15
|
+
end
|
13
16
|
|
14
17
|
session = Helper::GoogleDriveHelper.setup(
|
15
18
|
keyfile: params[:drive_keyfile],
|
19
|
+
key_json: params[:drive_key_json],
|
16
20
|
service_account: params[:service_account]
|
17
21
|
)
|
18
22
|
|
@@ -56,46 +60,74 @@ module Fastlane
|
|
56
60
|
|
57
61
|
def self.available_options
|
58
62
|
[
|
59
|
-
FastlaneCore::ConfigItem.new(
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
63
|
+
FastlaneCore::ConfigItem.new(
|
64
|
+
key: :drive_keyfile,
|
65
|
+
env_names: ['GDRIVE_KEY_FILE', 'GOOGLE_APPLICATION_CREDENTIALS'],
|
66
|
+
description: 'Path to the JSON keyfile',
|
67
|
+
conflicting_options: [:drive_key_json],
|
68
|
+
type: String,
|
69
|
+
optional: true,
|
70
|
+
verify_block: proc do |value|
|
71
|
+
UI.user_error!("Couldn't find config keyfile at path '#{value}'") unless File.exist?(value)
|
72
|
+
UI.user_error!("'#{value}' doesn't seem to be a valid JSON keyfile") unless FastlaneCore::Helper.json_file?(value)
|
73
|
+
end
|
74
|
+
),
|
75
|
+
FastlaneCore::ConfigItem.new(
|
76
|
+
key: :drive_key_json,
|
77
|
+
env_name: 'GDRIVE_KEY_JSON',
|
78
|
+
description: 'Credential key in stringified JSON format',
|
79
|
+
optional: true,
|
80
|
+
conflicting_options: [:drive_keyfile],
|
81
|
+
type: String,
|
82
|
+
sensitive: true,
|
83
|
+
verify_block: proc do |value|
|
84
|
+
begin
|
85
|
+
JSON.parse(value)
|
86
|
+
rescue JSON::ParserError
|
87
|
+
UI.user_error!("Provided credential key is not a valid JSON")
|
88
|
+
end
|
89
|
+
end
|
90
|
+
),
|
91
|
+
FastlaneCore::ConfigItem.new(
|
92
|
+
key: :service_account,
|
93
|
+
env_name: 'GDRIVE_SERVICE_ACCOUNT',
|
94
|
+
description: 'true if the credential is for a service account, false otherwise',
|
95
|
+
optional: true,
|
96
|
+
is_string: false,
|
97
|
+
default_value: false
|
98
|
+
),
|
99
|
+
FastlaneCore::ConfigItem.new(
|
100
|
+
key: :folder_id,
|
101
|
+
env_name: "GDRIVE_UPLOAD_FOLDER_ID",
|
102
|
+
description: "Upload target folder id",
|
103
|
+
optional: false,
|
104
|
+
type: String,
|
105
|
+
verify_block: proc do |value|
|
106
|
+
UI.user_error!("No target `folder_id` was provided. Pass it using `folder_id: 'some_id'`") unless value and !value.empty?
|
107
|
+
end
|
108
|
+
),
|
109
|
+
FastlaneCore::ConfigItem.new(
|
110
|
+
key: :upload_files,
|
111
|
+
env_name: "GDRIVE_UPLOAD_FILES",
|
112
|
+
description: "Path to files to be uploaded",
|
113
|
+
optional: false,
|
114
|
+
is_string: false,
|
115
|
+
verify_block: proc do |value|
|
116
|
+
UI.user_error!("upload_files must be an Array of paths to files") unless value.kind_of?(Array)
|
117
|
+
UI.user_error!("No upload file is given, pass using `upload_files: ['a', 'b']`") unless value and !value.empty?
|
118
|
+
value.each do |path|
|
119
|
+
UI.user_error!("Couldn't find upload file at path '#{path}'") unless File.exist?(path)
|
120
|
+
end
|
121
|
+
end
|
122
|
+
),
|
123
|
+
FastlaneCore::ConfigItem.new(
|
124
|
+
key: :public_links,
|
125
|
+
env_name: 'GDRIVE_PUBLIC_LINKS',
|
126
|
+
description: 'Uploaded file links should be public',
|
127
|
+
optional: true,
|
128
|
+
default_value: false,
|
129
|
+
is_string: false
|
130
|
+
)
|
99
131
|
]
|
100
132
|
end
|
101
133
|
|
@@ -1,15 +1,18 @@
|
|
1
1
|
require 'fastlane_core/ui/ui'
|
2
2
|
require 'google_drive'
|
3
|
+
|
3
4
|
module Fastlane
|
4
5
|
UI = FastlaneCore::UI unless Fastlane.const_defined?("UI")
|
5
6
|
|
6
7
|
module Helper
|
7
8
|
class GoogleDriveHelper
|
8
|
-
def self.setup(keyfile: nil, service_account: false)
|
9
|
+
def self.setup(keyfile: nil, key_json: nil, service_account: false)
|
10
|
+
keyfile_or_io = keyfile || StringIO.new(key_json || '')
|
11
|
+
|
9
12
|
if service_account
|
10
|
-
::GoogleDrive::Session.from_service_account_key(
|
13
|
+
::GoogleDrive::Session.from_service_account_key(keyfile_or_io)
|
11
14
|
else
|
12
|
-
::GoogleDrive::Session.from_config(
|
15
|
+
::GoogleDrive::Session.from_config(keyfile_or_io)
|
13
16
|
end
|
14
17
|
rescue Exception => e
|
15
18
|
UI.error(e.message)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fastlane-plugin-google_drive
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.10.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Bumsoo Kim
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2024-09-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: google_drive2
|
@@ -196,6 +196,20 @@ dependencies:
|
|
196
196
|
- - ">="
|
197
197
|
- !ruby/object:Gem::Version
|
198
198
|
version: '0'
|
199
|
+
- !ruby/object:Gem::Dependency
|
200
|
+
name: simplecov_json_formatter
|
201
|
+
requirement: !ruby/object:Gem::Requirement
|
202
|
+
requirements:
|
203
|
+
- - ">="
|
204
|
+
- !ruby/object:Gem::Version
|
205
|
+
version: '0'
|
206
|
+
type: :development
|
207
|
+
prerelease: false
|
208
|
+
version_requirements: !ruby/object:Gem::Requirement
|
209
|
+
requirements:
|
210
|
+
- - ">="
|
211
|
+
- !ruby/object:Gem::Version
|
212
|
+
version: '0'
|
199
213
|
- !ruby/object:Gem::Dependency
|
200
214
|
name: fastlane
|
201
215
|
requirement: !ruby/object:Gem::Requirement
|
@@ -245,7 +259,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
245
259
|
- !ruby/object:Gem::Version
|
246
260
|
version: '0'
|
247
261
|
requirements: []
|
248
|
-
rubygems_version: 3.
|
262
|
+
rubygems_version: 3.1.6
|
249
263
|
signing_key:
|
250
264
|
specification_version: 4
|
251
265
|
summary: Upload files to Google Drive
|