forked from bitrise-steplib/steps-google-play-deploy
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathstep.yml
116 lines (100 loc) · 4.21 KB
/
step.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
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
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
title: Google Play Deploy
summary: Google Play Deploy
description: |-
To use this step:
1. You have to upload the first apk manually (using the web interface).
See: https://play.google.com/apps/publish -> All applications -> Add new application
2. You must link your Google Play Developer Console to an API project.
See: https://developers.google.com/android-publisher/getting_started. Check the __Linking your API Project section__.
3. Setting Up API Access Clients, using a service account:
See: https://developers.google.com/android-publisher/getting_started. Check the __Using a service account__ section.
When you create your service account on the google developer console, choose json as `Key Type`.
4. Grant Access to provide the service account the necessary rights.
See: https://play.google.com/apps/publish -> Settings -> User account & rights -> Invite new user and give the privileges.
Due to the way the Google Play Publisher API works, you have to grant at least the following permissions to that service account:
- Edit store listing, pricing & distribution
- Manage Production APKs
- Manage Alpha & Beta APKs
- Manage Alpha & Beta users
website: https://github.com/bitrise-io/steps-google-play-deploy
source_code_url: https://github.com/bitrise-io/steps-google-play-deploy
support_url: https://github.com/bitrise-io/steps-google-play-deploy/issues
host_os_tags:
- osx-10.10
- ubuntu
project_type_tags:
- android
- xamarin
- cordova
- ionic
- react-native
type_tags:
- deploy
is_requires_admin_user: false
is_always_run: false
is_skippable: false
deps:
brew:
- name: go
apt_get:
- name: golang
bin_name: go
toolkit:
go:
package_name: github.com/bitrise-steplib/steps-google-play-deploy
inputs:
- service_account_json_key_path:
opts:
title: Service Account JSON key file path
description: |-
Path to the Service Account's JSON key file.
For remote JSON key file you can provide any download location (ex: `https://URL/TO/key.json`).
For local JSON key file provide file path url. (ex: `file://PATH/TO/key.json`).
is_required: true
is_sensitive: true
- build_tools_path:
opts:
title: Path for build tools
description: |-
This step neeeds aapt which is located in android build tools
is_required: true
- apk_path: "$BITRISE_APK_PATH"
opts:
title: APK or App Bundle file path
description: |-
Path to the APK or App Bundle to deploy.
You can provide multiple APK paths separated by `|` character.
Format examples:
- `/path/to/my/app.apk`
- `/path/to/my/app1.apk|/path/to/my/app2.apk|/path/to/my/app3.apk`
- `/path/to/my/bundle.aab`
is_required: true
- track: internal
opts:
title: Track
summary: The track in which you want to assign the uploaded APK(s).
description: |-
The track in which you want to assign the uploaded APK(s).
Can be one of the built-in tracks: internal, alpha, beta, rollout, production.
Or you can set your custom track name as well.
For example: `pre-release`, or any of your closed track you added in Google Play Developer Console.
is_required: true
- mapping_file: "$BITRISE_MAPPING_PATH"
opts:
title: Location of your mapping.txt file
description: |-
The `mapping.txt` file provides a translation between the original and obfuscated class, method, and field names.
- untrack_blocking_versions: "true"
opts:
title: "Untrack blocking versions?"
description: |-
Should deactivate apks, with lower version code, on lower level tracks?
E.g.:
If you have an __active apk on alpha__ track with version code: `42`.
And you try to __upload a new version (`43`), to the beta track__, you will see an error:
`Version 42 of this app can not be downloaded by any devices as they will all receive APKs with higher version codes`
To avoid this issue set this input to: `"true"` and the step will deactivate every apk with lower version code, on lower level tracks.
value_options:
- "true"
- "false"
is_required: true