• Stars
    star
    115
  • Rank 305,916 (Top 7 %)
  • Language
    Ruby
  • License
    MIT License
  • Created almost 8 years ago
  • Updated about 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Integrate your Cordova build into your Fastlane setup

Cordova Plugin

fastlane Plugin Badge

Features

  • Build your Cordova project inside a lane
  • Automatically handle code signing on iOS, even for XCode 8

Getting Started

This project is a fastlane plugin. To get started with fastlane-plugin-cordova, add it to your project by running:

fastlane add_plugin cordova

⚠️ If you're using a Cordova version below 7, you need to use version 1.0.1 of this plugin

Then you can integrate it into your Fastlane setup:

platform :ios do
  desc "Deploy ios app on the appstore"

  lane :deploy do
    match(type: "appstore")
    cordova(platform: 'ios')
    appstore(ipa: ENV['CORDOVA_IOS_RELEASE_BUILD_PATH'])
  end
end

platform :android do
  desc "Deploy android app on play store"

  lane :deploy do
    cordova(
      platform: 'android',
      keystore_path: './prod.keystore',
      keystore_alias: 'prod',
      keystore_password: 'password'
    )
    supply(apk: ENV['CORDOVA_ANDROID_RELEASE_BUILD_PATH'])

    # Alternatively, deploy an Android Application Bundle
    # cordova(
    #   package_type: 'bundle',
    #   platform: 'android',
    #   keystore_path: './prod.keystore',
    #   keystore_alias: 'prod',
    #   keystore_password: 'password'
    # )
    # supply(aab: ENV['CORDOVA_ANDROID_RELEASE_BUILD_PATH'])
  end
end

with an Appfile such as

app_identifier "com.awesome.app"
apple_id "[email protected]"
team_id "28323HT"

If using Crosswalk, replace supply(apk: ENV['CORDOVA_ANDROID_RELEASE_BUILD_PATH']) by:

supply(
  apk_paths: [
   'platforms/android/build/outputs/apk/android-armv7-release.apk',
   'platforms/android/build/outputs/apk/android-x86-release.apk'
  ],
)

Plugin API

To check what's available in the plugin, install it in a project and run at the root of the project:

fastlane actions cordova

Which will produce:

Key Description Env Var Default
platform Platform to build on.
Should be either android or ios
CORDOVA_PLATFORM
release Build for release if true,
or for debug if false
CORDOVA_RELEASE true
device Build for device CORDOVA_DEVICE true
type This will determine what type of build is generated by Xcode.
Valid options are development, enterprise, adhoc, and appstore
CORDOVA_IOS_PACKAGE_TYPE appstore
team_id The development team (Team ID) to use for code signing CORDOVA_IOS_TEAM_ID 28323HT
build_flag An array of Xcode buildFlag. Will be appended on compile command. CORDOVA_IOS_BUILD_FLAG []
provisioning_profile GUID of the provisioning profile to be used for signing CORDOVA_IOS_PROVISIONING_PROFILE
package_type This will determine what type of Android build is generated.
Valid options are apk and bundle
CORDOVA_ANDROID_PACKAGE_TYPE apk
keystore_path Path to the Keystore for Android CORDOVA_ANDROID_KEYSTORE_PATH
keystore_password Android Keystore password CORDOVA_ANDROID_KEYSTORE_PASSWORD
key_password Android Key password (default is keystore password) CORDOVA_ANDROID_KEY_PASSWORD
keystore_alias Android Keystore alias CORDOVA_ANDROID_KEYSTORE_ALIAS
min_sdk_version Overrides the value of minSdkVersion CORDOVA_ANDROID_MIN_SDK_VERSION
build_number Build Number for iOS and Android CORDOVA_BUILD_NUMBER
browserify Specifies whether to browserify build or not CORDOVA_BROWSERIFY false
cordova_prepare Specifies whether to run cordova prepare before building CORDOVA_PREPARE true
cordova_no_fetch Specifies whether to run cordova platform add with --nofetch parameter CORDOVA_NO_FETCH false
cordova_build_config_file Call cordova compile with --buildConfig=<ConfigFile> to specify build config file path CORDOVA_BUILD_CONFIG_FILE

Run tests for this plugin

To run both the tests, and code style validation, run

rake

To automatically fix many of the styling issues, use

rubocop -a

Issues and Feedback

For any other issues and feedback about this plugin, please submit it to this repository.

Troubleshooting

If you have trouble using plugins, check out the Plugins Troubleshooting doc in the main fastlane repo.

Using fastlane Plugins

For more information about how the fastlane plugin system works, check out the Plugins documentation.

About fastlane

fastlane is the easiest way to automate beta deployments and releases for your iOS and Android apps. To learn more, check out fastlane.tools.

More Repositories

1

react-native-image-resizer

πŸ—» Resize local images with React Native
Java
1,514
star
2

generator-rn-toolbox

The React Native Generator to bootstrap your apps
JavaScript
1,195
star
3

react-native-image-header-scroll-view

ScrollView with an image in header which becomes a navbar
TypeScript
957
star
4

flashlight

πŸ“±βš‘οΈ Lighthouse for Mobile - audits your app and gives a performance score to your Android apps (native, React Native, Flutter..). Measure performance on CLI, E2E tests, CI...
TypeScript
864
star
5

react-native-make

A collection of everyday React Native CLI tools
TypeScript
765
star
6

react-native-flipper-performance-monitor

An attempt to have a lighthouse for React Native. Flipper plugin to show a graph of the React Native performance monitor
TypeScript
580
star
7

react-native-formik

Set of helpers to make form awesome with React Native and Formik
JavaScript
399
star
8

react-native-hide-with-keyboard

Wrap around components to hide them if keyboard is up
JavaScript
124
star
9

rn-camera-roll

Use the React native CameraRoll API with both Android & iOS
Java
110
star
10

redux-enhancer-react-native-appstate

Connect your App State changes directly to your Redux store
JavaScript
91
star
11

dev-standards

https://bamtech.gitbooks.io/dev-standards/
JavaScript
86
star
12

animation-demo

react native animation demo
JavaScript
73
star
13

react-tv-space-navigation

A React Native module to handle spatial navigation for a TV application
TypeScript
64
star
14

react-native-testing

Some examples, tools and tips on how to test a React Native app with react-native-testing-library
TypeScript
61
star
15

commentor

Commentor helps you analyze code review comments πŸ“ˆ
TypeScript
45
star
16

flow-navigator

A flow navigator for react-navigation
TypeScript
43
star
17

react-native-batch-push

⛔️ DEPRECATED : React Native integration of Batch.com push notifications SDK
TypeScript
41
star
18

bam-api

A GraphQL, "production ready"β„’ api for internal use at bam, but open sourced as an example !
JavaScript
39
star
19

react-native-components-collection

A collection of common React Native components
JavaScript
38
star
20

react-native-braintree-payments-drop-in

React Native integration of Braintree Drop-in
Java
35
star
21

react-native-stripe

Objective-C
32
star
22

nest-rabbit-tasks

nest-rabbit-worker is a TaskQueue based upon RabbitMQ for NestJS
TypeScript
30
star
23

react-native-numberpicker-dialog

Show a dialog on Android, allowing to choose an option using NumberPicker
Java
28
star
24

generator-module-react-native

Generate native module boilerplate for React Native iOS & Android
JavaScript
25
star
25

react-native-graphql-transformer

Transform GraphQL source files
JavaScript
22
star
26

react-native-app-security

Easily implement usual security measures in React Native Expo apps
Java
20
star
27

kstate

Kotlin MP State Machine Library
Kotlin
20
star
28

react-native-screen-sizer

A react native library to simulate different screen sizes on the same device
TypeScript
19
star
29

ecoappscore

18
star
30

adaptive_test

Devtools to write stunning widget test in Flutter. Made by BAM β€οΈπŸ’™πŸ’›
C++
16
star
31

taiichi

Poka Yoke (on fire)
TypeScript
15
star
32

react-native-text-input

Provides Text Input component with colorization for password both on Android & iOS
Java
15
star
33

react-native-form-idable

JavaScript
14
star
34

react-native-image-header-scroll-view-example

Demo application for image-header-scroll-view library
JavaScript
14
star
35

easy-lottie-react-native

Lottie for React Native without hassle - UNMAINTAINED: improvements were upstreamed to lottie-react-native
JavaScript
14
star
36

android-live-coding

Kotlin
12
star
37

react-native-highlight-text

A react native module that hightlights given words in a text
JavaScript
11
star
38

rn-calabash-demo

How to add Calabash to a React Native project
Objective-C
10
star
39

CircleCI-Scripts

A boilerplate to build Cordova Application (iOS and Android) and release them with HockeyApp using Circle CI.
Shell
10
star
40

performance-monitoring

JavaScript
10
star
41

redux-enhancer-react-native-network

Connect redux to the network changes
JavaScript
10
star
42

collections-runner

automator
TypeScript
9
star
43

react-native-animated-picker

A picker for iOS that is displayed inside a keyboard and some other utils for custom keyboards
JavaScript
9
star
44

forest-admin-smart-views

A repo to gather forest admin smart views
JavaScript
8
star
45

google-calendar-counter

JavaScript
7
star
46

kettle

Kettle - The templating engine for boilerplates
TypeScript
6
star
47

devicelab-bot

A device lab manager to automatically install apps on all your devices
JavaScript
6
star
48

bam-dev-native-standards

HTML
6
star
49

conceptor

TypeScript
6
star
50

equatable_lint

Linting rules for Equatable package
Dart
5
star
51

estimator

Internal tool to help to estimate projects
TypeScript
5
star
52

react-native-project-config

Monorepo with packages for setting up ESLint, Typescript, Prettier and Jest.
TypeScript
5
star
53

open-source

Our open source repositories
4
star
54

react-native-stripe-sca

Stripe integration for react-native with SCA support
Ruby
4
star
55

bambi

BAM Beautiful (code) Inspection
JavaScript
3
star
56

react-native-ssl-pinning

Implements SSLPinning with expo-module and expo-plugin
TypeScript
3
star
57

a-gentle-introduction-to-mobile-development

Git Book
3
star
58

storybook-addon-react-native-deployment

Enable deployment of a storybook on your React Native app
JavaScript
3
star
59

typescript-patterns

3
star
60

formation-graphql

JavaScript
3
star
61

tuist-example

Showcasing a basic tuist application
Swift
2
star
62

ingenico-flutter-sdk

Flutter SDK for the Ingenico payment solution
Java
2
star
63

eslint-plugin-bam

JavaScript
2
star
64

formation-tech-lead-exercices

A good debugging exercise
JavaScript
2
star
65

react-navigation-live-reload-on-screen

TypeScript
2
star
66

tribe-native-rd-tateru-visionos

Swift
2
star
67

react-redux-toolbox

Set of utils for React and Redux development
JavaScript
2
star
68

www.bamlab.fr

CSS
2
star
69

android-navigable-bottom-sheet

Helps us to choose the best way to have navigable bottom sheet in compose
Kotlin
2
star
70

detoxFormation

Experiment with Detox & React Native
TypeScript
2
star
71

redux-crud-model

Generate reducer, actions creators and selectors to easily handle entity crud operation
JavaScript
2
star
72

cordova-plugin-native-routing

A Cordova plugin that allows you to call a native controller
Java
2
star
73

tuist-poc-healico

A proof of concept of Tuist to show how we can tame xcode complexity on a micro-feature architecture. Uses version 2.1.1 syntax.
Swift
2
star
74

flutter_dojo

Dart
2
star
75

team-mosaic-creator

Generate a mosaic of your team members' profile pictures
PHP
1
star
76

kotlin-open-source-template

Template for open source projects
HTML
1
star
77

parcel-plugin-handlebars-mock

JavaScript
1
star
78

nest-clean-code

TypeScript
1
star
79

dojo-snake

JavaScript
1
star
80

react-native-debugger-utils

JavaScript
1
star
81

hello-rust

A small Rust Hello World project to build rust programs for iOS/Android targets in order to run them from within a mobile app
1
star
82

formation-redux-refacto

How to refacto your redux
JavaScript
1
star
83

bamer_profiles_flutter

Small app to display BAMer profiles and their github info. Used for code audits and pair programming in flutter tech lead hiring progress
C++
1
star