-1

I am working on a mobile CI/CD and using Fastlane for the scripting / actions support. The organization wants to put the Android and IOS artifacts in the Nexus Repository Manager, so I looked for an action and/or plugin for FastLane. Sure enough there is an action: Fastlane action for nexus upload and a plugin (source) in GitHub: Source for nexus_upload plugin to Fastlane.

I am unable to get the action to work and it throws a mysterious error:

$ bundle exec fastlane  uploadToServer                                                                                           
[✔]  
+----------------------------------+---------+------------------+
|                         Used plugins                          |
+----------------------------------+---------+------------------+
| Plugin                           | Version | Action           |
+----------------------------------+---------+------------------+
| fastlane-plugin-upload_to_server | 0.1.6   | upload_to_server |
+----------------------------------+---------+------------------+

[13:30:01]: ------------------------------
[13:30:01]: --- Step: default_platform ---
[13:30:01]: ------------------------------
[13:30:01]: Lane name 'env' is invalid! Invalid names are run, init, new_action, lanes, list, docs, action, actions, enable_auto_complete, new_plugin, add_plugin, install_plugins, update_plugins, search_plugins, help, env, update_fastlane.

[!] Lane name 'env' is invalid
mobibob
  • 8,670
  • 20
  • 82
  • 131

1 Answers1

0

Try the following to get the parameters.

enter $ fastlane action nexus_upload                                                                                                

[✔]

[13:35:41]: fastlane detected a Gemfile in the current directory
[13:35:41]: However, it seems like you didn't use `bundle exec`
[13:35:41]: To launch fastlane faster, please use
[13:35:41]: 
[13:35:41]: $ bundle exec fastlane action nexus_upload
[13:35:41]: 
[13:35:41]: Get started using a Gemfile for fastlane https://docs.fastlane.tools/getting-started/ios/setup/#use-a-gemfile
+----------------------------------+---------+------------------+
|                         Used plugins                          |
+----------------------------------+---------+------------------+
| Plugin                           | Version | Action           |
+----------------------------------+---------+------------------+
| fastlane-plugin-upload_to_server | 0.1.6   | upload_to_server |
+----------------------------------+---------+------------------+

Loading documentation for nexus_upload:

+--------------------------------------------------------------------------+
|                               nexus_upload                               |
+--------------------------------------------------------------------------+
| Upload a file to "Sonatype Nexus platform" (https://www.sonatype.com ) |
|                                                                          |
| Created by xfreebird, mdio                                               |
+--------------------------------------------------------------------------+

+----------------------+-----------------------------------------------+-------------------------------+---------+
|                                              nexus_upload Options                                              |
+----------------------+-----------------------------------------------+-------------------------------+---------+
| Key                  | Description                                   | Env Var                       | Default |
+----------------------+-----------------------------------------------+-------------------------------+---------+
| file                 | File to be uploaded to Nexus                  | FL_NEXUS_FILE                 |         |
| repo_id              | Nexus repository id e.g. artefacts            | FL_NEXUS_REPO_ID              |         |
| repo_group_id        | Nexus repository group id e.g. com.company    | FL_NEXUS_REPO_GROUP_ID        |         |
| repo_project_name    | Nexus repository commandect name. Only        | FL_NEXUS_REPO_PROJECT_NAME    |         |
|                      | letters, digits, underscores(_), hyphens(-),  |                               |         |
|                      | and dots(.) are allowed                       |                               |         |
| repo_project_version | Nexus repository commandect version           | FL_NEXUS_REPO_PROJECT_VERSION |         |
| repo_classifier      | Nexus repository artifact classifier          | FL_NEXUS_REPO_CLASSIFIER      |         |
|                      | (optional)                                    |                               |         |
| endpoint             | Nexus endpoint e.g. http://nexus:8081         | FL_NEXUS_ENDPOINT             |         |
| mount_path           | Nexus mount path (Nexus 3 instances have      | FL_NEXUS_MOUNT_PATH           | /nexus  |
|                      | this configured as empty by default)          |                               |         |
| username             | Nexus username                                | FL_NEXUS_USERNAME             |         |
| password             | Nexus password                                | FL_NEXUS_PASSWORD             |         |
| ssl_verify           | Verify SSL                                    | FL_NEXUS_SSL_VERIFY           | true    |
| nexus_version        | Nexus major version                           | FL_NEXUS_MAJOR_VERSION        | 2       |
| verbose              | Make detailed output                          | FL_NEXUS_VERBOSE              | false   |
| proxy_username       | Proxy username                                | FL_NEXUS_PROXY_USERNAME       |         |
| proxy_password       | Proxy password                                | FL_NEXUS_PROXY_PASSWORD       |         |
| proxy_address        | Proxy address                                 | FL_NEXUS_PROXY_ADDRESS        |         |
| proxy_port           | Proxy port                                    | FL_NEXUS_PROXY_PORT           |         |
+----------------------+-----------------------------------------------+-------------------------------+---------+
* = default value is dependent on the user's system

More information can be found on https://docs.fastlane.tools/actions/nexus_upload here


Missing parameters will result in a dialog for the needed parameters:

   $ bundle exec fastlane run nexus_upload username:"mobibob" password:"secretpassword" file:"./app/build/outputs/apk/debug/app-debug.apk"         
[✔]  
+----------------------------------+---------+------------------+
|                         Used plugins                          |
+----------------------------------+---------+------------------+
| Plugin                           | Version | Action           |
+----------------------------------+---------+------------------+
| fastlane-plugin-upload_to_server | 0.1.6   | upload_to_server |
+----------------------------------+---------+------------------+

[13:34:22]: --------------------------
[13:34:22]: --- Step: nexus_upload ---
[13:34:22]: --------------------------
[13:34:22]: To not be asked about this value, you can specify it using 'repo_id'
[13:34:22]: Nexus repository id e.g. artefacts: 
mobibob
  • 8,670
  • 20
  • 82
  • 131