Automating meteor builds to the AppStore, TestFlight, Hockey, Google Play, and more later.
$ launch build myapp.com
$ launch galaxy myapp.com
$ launch testflight
Automating meteor builds to the AppStore, TestFlight, Hockey, Google Play, and more later.
Home Page: https://www.johnpinkerton.me/meteor-launch/
Automating meteor builds to the AppStore, TestFlight, Hockey, Google Play, and more later.
$ launch build myapp.com
$ launch galaxy myapp.com
$ launch testflight
When trying to build for ios, I get the following error:
Opening Xcode :( ...
undefined
Then, Xcode opens up, and I'm presented with the following dialog:
The workspace file at “/Users/wesley/Projects/oji/.build/ios/project/oji.xcodeproj/project.xcworkspace” has been modified by another application.
Do you want to keep the Xcode version, or revert to the version on disk?
Would love any hints on where to look to solve this. Thanks so much!
Ran the npm install and tried 'launch init' and got this error:
~/src/paintball/app [dev*]$ launch init
local@xxx-Macbook-Pro~$
fs.js:549
return binding.open(pathModule._makeLong(path), stringToFlags(flags), mode);
^
Error: ENOENT: no such file or directory, open '/Users/xxx/.npm-packages/lib/node_modules/meteor-launch/assets/launch.json'
at Error (native)
at Object.fs.openSync (fs.js:549:18)
at fs.readFileSync (fs.js:397:15)
at /Users/xxx/.npm-packages/lib/node_modules/meteor-launch/lib/util.js:77:45
at FSReqWrap.oncomplete (fs.js:82:15)
I was able to resolve this by going to my node_modules/meteor-launch directory and creating a new 'assets' folder and copying the launch.json file from github into it.
After doing this, launch init
worked fine and created the launch.json file in my app.
Branch | Build failing 🚨 |
---|---|
Dependency | eslint-plugin-react |
Current Version | 6.10.0 |
Type | devDependency |
This version is covered by your current version range and after updating it in your project the build failed.
As eslint-plugin-react is “only” a devDependency of this project it might not break production or downstream projects, but “only” your build or test tools – preventing new deploys or publishes.
I recommend you give this issue a high priority. I’m sure you can resolve this 💪
jsx-indent
auto fix with tabs ([#1057][] @kentcdodds @webOS101)jsx-indent
crash ([#1061][] @iancmyers)void-dom-elements-no-children
crash and fix it to only checks for a createElement call fromno-multi-comp
([#1088][] @benstepp)The new version differs by 11 commits .
ab03af8
Update CHANGELOG and bump version
b646485
Merge pull request #1089 from benstepp/bs-multicomp-false-positives
c038899
Bug fix for false positives with no-multi-comp
8148833
[Fix] Update void-dom-elements-no-children createElement checks
c45ab86
Merge pull request #1081 from webOS101/jsx-indent-fix
7863a5c
Fix jsx-indent single line jsx
416deff
Update void-dom-elements-no-children
22f3638
Merge pull request #1077 from iancmyers/fix-jsx-indent-template-conditional
c6f4a5e
Fix error caused by templates in ConditionalExpressions (jsx-indent)
a4b6a85
Merge pull request #1058 from kentcdodds/pr/jsx-indent-tabs-fix
6e5f688
[Fix] jsx-indent with tabs (fixes #1057)
See the full diff.
There is a collection of frequently asked questions and of course you may always ask my humans.
Your Greenkeeper Bot 🌴
Sample
$ launch build myapp.com
$ launch galaxy myapp.com
$ launch testflight
This was very very unclear!
I had no idea I had to run "launch build myapp.com && launch testflight"
Please break the sample out so the user knows they must run these commands in succession
Maybe it should read based on what the user wants to do like :
To Push to TestFlight:
Steps
To Push to Galaxy:
Steps
To Push to All Stores:
Steps
Etc - thank you!!! XXXX
Right now we just have basic tests. Testing this project is interesting since it involves a lot of external dependencies.
We should figure out a better way to test the parts of the project that we can. Things to explore:
We should provide a stand-alone action for signing and aligning Android APKs without having to use hockey or playstore actions.
Update build command to include settings in the app
launch init
Installing fastlane...
ERROR: Error installing fastlane:
"snapshot" from snapshot conflicts with /usr/local/bin/snapshot
Command failed: sudo gem install fastlane
ERROR: Error installing fastlane:
"snapshot" from snapshot conflicts with /usr/local/bin/snapshot
We should better handle cases when launch vars are missing. This won't happen too much, as launch init
will be most users' entry point. But, if launch.json
is a blank object, we should be able to handle that.
create custom CI example files
npm install -g meteor-launch
npm ERR! Darwin 15.5.0
npm ERR! argv "/usr/local/Cellar/node5/5.11.0/bin/node" "/usr/local/bin/npm" "install" "-g" "meteor-launch"
npm ERR! node v5.11.0
npm ERR! npm v3.9.5
npm ERR! path /usr/local/lib/node_modules/meteor-launch/lib/index.js
npm ERR! code ENOENT
npm ERR! errno -2
npm ERR! syscall chmod
npm ERR! enoent ENOENT: no such file or directory, chmod '/usr/local/lib/node_modules/meteor-launch/lib/index.js'
npm ERR! enoent ENOENT: no such file or directory, chmod '/usr/local/lib/node_modules/meteor-launch/lib/index.js'
npm ERR! enoent This is most likely not a problem with npm itself
npm ERR! enoent and is related to npm not being able to find a file.
npm ERR! enoent
npm ERR! Please include the following file with any support request:
After updating to the newest fastlane, sigh, gym, and meteor-launch I can no longer push my app up to testflight, which was working previously. Here's the error that I'm getting:
Provisioning profile "com.oji AdHoc 1480555445" doesn't include signing certificate "iPhone Distribution: Wesley Smith (7RX8A9CM44)".
Code signing is required for product type 'Application' in SDK 'iOS 10.1'
I realize this may be a fastlane issue, and not so much a meteor-launch issue, but it's strange to me that it was working great, and now I'm getting this error suddenly. To my knowledge I haven't changed my certificates are done anything like that.
Branch | Build failing 🚨 |
---|---|
Dependency | eslint |
Current Version | 3.14.0 |
Type | devDependency |
This version is covered by your current version range and after updating it in your project the build failed.
As eslint is “only” a devDependency of this project it might not break production or downstream projects, but “only” your build or test tools – preventing new deploys or publishes.
I recommend you give this issue a high priority. I’m sure you can resolve this 💪
The new version differs by 8 commits .
e544644
3.14.1
1297635
Build: package.json and changelog update for 3.14.1
791f32b
Fix: brace-style false positive for keyword method names (fixes #7974) (#7980)
d7a0add
Docs: Add ESLint tutorial embed to getting started (#7971)
72d41f0
Fix: no-var autofix syntax error in single-line statements (fixes #7961) (#7962)
b9e5b68
Fix: indent rule crash on sparse array with object (fixes #7959) (#7960)
a7bd66a
Chore: Adding assign/redeclare tests to no-undefined (refs #7964) (#7965)
8bcbf5d
Docs: typo in prefer-promise-reject-errors (#7958)
See the full diff.
There is a collection of frequently asked questions and of course you may always ask my humans.
Your Greenkeeper Bot 🌴
The ability to dynamically set the bundle id for builds would be useful for installing alpha, beta, and production versions of an app on the same device.
This could be done by parsing and updating the mobile-config.js
file, but should probably be done in the actual build files if possible?
I think is good to have these setting to change source path or output path e.g
{
source: "./app",
buildPath: "./build"
}
Branch | Build failing 🚨 |
---|---|
Dependency | eslint-plugin-react |
Current Version | 6.9.0 |
Type | devDependency |
This version is covered by your current version range and after updating it in your project the build failed.
As eslint-plugin-react is “only” a devDependency of this project it might not break production or downstream projects, but “only” your build or test tools – preventing new deploys or publishes.
I recommend you give this issue a high priority. I’m sure you can resolve this 💪
forbid-foreign-prop-types
rule (#696 @iancmyers)void-dom-elements-no-children
rule (#709 @lencioni)forbid-elements
rule (#887 @kentor)noSortAlphabetically
option to jsx-sort-props
(#541 #786 @markus101)when
option to jsx-max-props-per-line
(#878 @kentor)nextProps
to prop-types
(#814)require-default-props
crash (#1029)require-default-props
rule when using Flow type from assignment (#1043 @wyze @CarlRosell)style-prop-object
to not warn with explicit null
or undefined
(#812 @ljharb)no-unused-prop-types
props detection in stateless components (#885 @BarryThePenguin)display-name
false positive with document.createElement
(#996 @jomasti)The new version differs by 49 commits .
83d4c4b
Update CHANGELOG and bump version
ee144d6
Merge pull request #890 from kentor/forbid-elements
3e2421e
Merge pull request #946 from BarryThePenguin/no-unused-prop-types-in-jsx
3b25a3b
Merge pull request #882 from kentor/jsx-max-props-per-line-updates
54abb8b
Merge pull request #1055 from iancmyers/icm-forbid-foreign-prop-type
0b25b66
Add forbid-foreign-prop-types rule
c586273
Merge pull request #1062 from dguo/patch-2
8e207b8
Fix no-array-index-key typo
d884a98
Add new rule: forbid-elements
c97dd0f
Merge pull request #1051 from yannickcr/void-dom-elements-no-children
a84d5f5
jsx-max-props-per-line: Use json format in docs
9af8d25
fix comments
d5c3e91
detect used props in jsx
b52f3b8
jsx-max-props-per-line: Add additional test cases
b485e28
jsx-max-props-per-line: Add when
option
There are 49 commits in total. See the full diff.
There is a collection of frequently asked questions and of course you may always ask my humans.
Your Greenkeeper Bot 🌴
I am getting the following error why trying to push to hockey or testflight:
[11:15:06]: Starting login with user '[email protected]'
[11:15:19]: Variable Dump:
[11:15:19]: {:DEFAULT_PLATFORM=>:ios, :PLATFORM_NAME=>:ios, :LANE_NAME=>"ios hockey"}
[11:15:19]: Connection reset by peer - SSL_connect
I'm assuming something is wrong with my certs / credentials, but I cannot figure it out. I followed the link in the guide for generated a certificate, but I did not set a password on the cert as per the instructions here. I've tried not setting a password for "CERT_PASSWORD" in launch.json, as well as setting a password and neither have worked. The rest of my login information is correct as far as I can tell (that is, it works fine to log in to the developer portal through the web).
Would love some direction @johnthepink. Thanks for your help so far!
16:13:11: --- Step: gym ---
16:13:11: Installing provisioning profile...
16:13:11: xcrun xcodebuild -list -project /Users//Desktop/XXXXXX/.meteor/local/cordova-build/platforms/ios/XXXXX.xcodeproj
[16:10:08]: xcodebuild -list timed-out after 10 seconds. You might need to recreate the user schemes. You can override the timeout value with the environment variable FASTLANE_XCODE_LIST_TIMEOUT
I increased the timeout to 320 and it still wont budge. Got all green before this -
/Library/Ruby/Gems/2.0.0/gems/fastlane-1.97.0/lib/fastlane/junit_generator.rb:17:in write': [!] No such file or directory - /Users/XXXXX/Desktop/XXXXXproject/.build/ios/report.xml (Errno::ENOENT) from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.97.0/lib/fastlane/junit_generator.rb:17:in
generate'
from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.97.0/lib/fastlane/lane_manager.rb:73:in finish_fastlane' from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.97.0/lib/fastlane/lane_manager.rb:63:in
cruise_lane'
from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.97.0/lib/fastlane/command_line_handler.rb:30:in handle' from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.97.0/lib/fastlane/commands_generator.rb:51:in
block (2 levels) in run'
from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/command.rb:178:in call' from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/command.rb:178:in
call'
from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/command.rb:153:in run' from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/runner.rb:428:in
run_active_command'
from /Library/Ruby/Gems/2.0.0/gems/fastlane_core-0.48.1/lib/fastlane_core/ui/fastlane_runner.rb:26:in run!' from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/delegates.rb:15:in
run!'
from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.97.0/lib/fastlane/commands_generator.rb:244:in run' from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.97.0/lib/fastlane/commands_generator.rb:20:in
start'
from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.97.0/lib/fastlane/cli_tools_distributor.rb:47:in take_off' from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.97.0/bin/fastlane:5:in
<top (required)>'
from /usr/local/bin/fastlane:23:in load' from /usr/local/bin/fastlane:23:in
No such file or directory - /Users/XXX/Desktop/XXXproject/.build/ios/report.xml (Errno::ENOENT)
I'm trying to run
launch hockey
After getting the iOS build set up. However, the script keeps trying to force me to input a slack_url, which I don't have, so I eventually have to put in a bogus url and then it errors out and crashes. How can I disable the slack integration? Putting it in launch.json as an empty string doesn't seem to work either. Thanks!
When attempting to push to testflight I get the following error from iTunes Transporter.
[19:10:07]: Your account has 2 step verification enabled
[19:10:07]: Please go to https://appleid.apple.com/account/manage
[19:10:07]: and generate an application specific password for
[19:10:07]: the iTunes Transporter, which is used to upload builds
I have generated an app-specific password, but it's not clear to me how I can set this password with meteor launch. It appears that fastlane has support for setting this password, but I don't think I can pass the password in to meteor launch. Perhaps this should be another variable in the launch.json file?
So close to getting meteor-launch running I can almost taste it!
Rework so Fastfile is brought in to current directory and then removed instead of calling from package.
Branch | Build failing 🚨 |
---|---|
Dependency | babel-cli |
Current Version | 6.18.0 |
Type | devDependency |
This version is covered by your current version range and after updating it in your project the build failed.
As babel-cli is “only” a devDependency of this project it might not break production or downstream projects, but “only” your build or test tools – preventing new deploys or publishes.
I recommend you give this issue a high priority. I’m sure you can resolve this 💪
There is a collection of frequently asked questions and of course you may always ask my humans.
Your Greenkeeper Bot 🌴
Branch | Build failing 🚨 |
---|---|
Dependency | coveralls |
Current Version | 2.11.15 |
Type | devDependency |
This version is covered by your current version range and after updating it in your project the build failed.
As coveralls is “only” a devDependency of this project it might not break production or downstream projects, but “only” your build or test tools – preventing new deploys or publishes.
I recommend you give this issue a high priority. I’m sure you can resolve this 💪
The new version differs by 13 commits .
8dfcfd6
version bump
4bc93ac
Merge branch 'master' of github.com:nickmerwin/node-coveralls
671acca
removed codeship badge
f390392
Merge pull request #152 from ndaidong/master
de968b0
Merge pull request #147 from hyperlink/update-request-dep
72a4046
Merge pull request #154 from a0viedo/patch-1
87b27f7
Merge pull request #142 from Hirse/feature/travis-pr
3edbecb
Merge pull request #155 from kasperlewau/master
d117e3d
reenable drone
dd230f6
don't hardcode minor version
cc0882d
Update outdate dependencies
99edf1a
Fix node-uuid deprecation by updating request dependency
f94b647
Get PR number from TRAVIS
See the full diff.
There is a collection of frequently asked questions and of course you may always ask my humans.
Your Greenkeeper Bot 🌴
I think it will make everything less confusing and more manageable if we aren't mapping launch variables directly to variables in dependencies. We should define the launch.json
in a way that is understandable, and then map them to their dependency counterparts inside of launch.
I propose we prepend all variables with LAUNCH_
, and then name the variables things that make more sense to the end user.
{
"LAUNCH_APP_NAME": "",
"LAUNCH_APP_IDENTIFIER": "",
"LAUNCH_APPLE_ID": "",
"LAUNCH_APPLE_PASSWORD": "",
"LAUNCH_KEYCHAIN_PASSWORD": "",
"LAUNCH_IOS_CERT_PATH": "",
"LAUNCH_IOS_CERT_PASSWORD": "",
"LAUNCH_SLACK_URL": "",
"LAUNCH_SLACK_ROOM": "",
"LAUNCH_ANDROID_STORE_KEY": "",
"LAUNCH_ANDROID_STORE_PASS": "",
"LAUNCH_ANDROID_ZIPALIGN": "",
"LAUNCH_IOS_HOCKEY_TOKEN": "",
"LAUNCH_ANDROID_HOCKEY_TOKEN": "",
"LAUNCH_ANDROID_HOCKEY_ID": "",
"LAUNCH_PLAY_AUTH_FILE": "",
"LAUNCH_GALAXY_DEPLOY_HOSTNAME": "",
"LAUNCH_GALAXY_SESSION_FILE": ""
}
We can take this, and remap them as necessary inside of launch. This will avoid most conflicts with other tools and their environment variables. But, it does feel a little verbose.
We could also prepend LAUNCH_
to each variable when launch reads the file. This way, we avoid conflicts with other tools, and become a little more succinct. However, I think this would make it a little more confusing to override the variables in a CI environment.
We should package this functionality in to a CLI to make it easier to use. Ex:
launch hockey example.com
Also, initializing should be made a lot easier. We need a command like this to start a new project:
launch init
Then, launch
should read the settings out of some kind .launch
file, instead of using environment variables for everything.
This should eliminate the need to have the launch
file and all the fastlane
files sitting in your repo. Just a settings file.
Would it be nice to be able to specify the meteor project directory if it is not the root? Or is this unnecessary?
At first, I thought it would be nice to specify this in the launch.json
file, and then keep launch.json
at the root of your whole project. But, if your Meteor project isn't at the root of your project, you may have multiple Meteor applications in your project that you want to use with Launch.
Possible solutions that handle both cases:
launch.json
file which contains an array of project directories, each with their ownlaunch.json
, which you could call with a command line optionSince now.sh supports docker files, meteor launch could easily deploy sites using now with potential hooks for other endpoints (I.e. aws)
Currently, we look for an Android APK at .build/android/release-unsigned.apk
. This doesn't work when building with the Crosswalk webview package. Instead, two APKs are built and are located at:
./.build/android/project/build/outputs/apk/android-armv7-release-unsigned.apk
./.build/android/project/build/outputs/apk/android-x86-release-unsigned.apk
We should sign and align both of the those files, and place them here:
./.build/android/armv7.apk
./.build/android/x86.apk
Then, we should update the hockey and playstore actions to support uploading both of those APKs.
The only question I have is how to determine if a project is using crosswalk or not. We could:
./.build/android/release-unsigned.apk
and then look for the crosswalk apks if it's not therelaunch.json
I'm leaning towards 1 right now. 2 would require checking .meteor/packages
and package.json
since it's possible to use the cordova crosswalk plugin directly. 3 requires extra setup from the user.
android: removed platform
/Users/webadmin/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/node-6/lib/node_modules/meteor-launch/lib/util.js:59
ANDROID_ZIPALIGN: result.ANDROID_ZIPALIGN[0] === "~" ? (0, _path.join)(process.env.HOME, result.ANDROID_ZIPALIGN.slice(1)) : (0, _path.resolve)(result.ANDROID_ZIPALIGN)
^
TypeError: Cannot read property '0' of undefined
at Object.generateSettings (/Users/webadmin/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/node-6/lib/node_modules/meteor-launch/lib/util.js:59:46)
at Object.<anonymous> (/Users/webadmin/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/node-6/lib/node_modules/meteor-launch/lib/android.js:21:31)
at Module._compile (module.js:570:32)
at Object.Module._extensions..js (module.js:579:10)
at Module.load (module.js:487:32)
at tryModuleLoad (module.js:446:12)
at Function.Module._load (module.js:438:3)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at Object.<anonymous> (/Users/webadmin/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/node-6/lib/node_modules/meteor-launch/lib/hockey.js:9:16)
This was after running meteor remove-platform android
How might one specify a custom server for the mobile app to connect to for DDP requests (instead of Galaxy) when running the "build" command?
Branch | Build failing 🚨 |
---|---|
Dependency | rimraf |
Current Version | 2.5.4 |
Type | dependency |
This version is covered by your current version range and after updating it in your project the build failed.
As rimraf is a direct dependency of this project this is very likely breaking your project right now. If other packages depend on you it’s very likely also breaking them.
I recommend you give this issue a very high priority. I’m sure you can resolve this 💪
The new version differs by 5 commits .
5b661e4
v2.6.0
c09915f
update tap
d53235d
Make rimraf.sync 10000% more reliable on Windows
e8b10a7
Retry on EBUSY et al on non-windows platforms as well
0fac5f7
Add --no-glob option to cli
See the full diff.
There is a collection of frequently asked questions and of course you may always ask my humans.
Your Greenkeeper Bot 🌴
meteor build .build --server https://alpha-app.newspring.io --mobile-settings .remote/settings/sites/app.newspring.io/alpha.settings.json
works locally
meteor build .build --server https://alpha-app.newspring.io
does not work
Allow for a relative path to zipalign in the launch.json
file
Probably should be deprecated now that fastlane supports android
Branch | Build failing 🚨 |
---|---|
Dependency | babel-preset-es2015 |
Current Version | 6.22.0 |
Type | devDependency |
This version is covered by your current version range and after updating it in your project the build failed.
As babel-preset-es2015 is “only” a devDependency of this project it might not break production or downstream projects, but “only” your build or test tools – preventing new deploys or publishes.
I recommend you give this issue a high priority. I’m sure you can resolve this 💪
There is a collection of frequently asked questions and of course you may always ask my humans.
Your Greenkeeper Bot 🌴
Currently, launch tries to open Xcode no matter the type of project, logs "opening xcode", and then fails silently if it doesn't find an Xcode project.
We should not log "opening xcode" if the ios platform is not added to the meteor project.
We should add a command that makes it easy to check the version number of launch currently installed:
launch --version
launch -v
The playstore action currently only uploads to the alpha channel. We should provide a way to specify the channel to upload to:
launch playstore alpha
launch playstore beta
launch playstore production
now that deploy commands aren't handling the build, we should shorten the amount of args they take:
launch hockey
launch testflight
When I run launch init the command immediately crashes with the following output:
Installing fastlane...
undefined is not a function
Branch | Build failing 🚨 |
---|---|
Dependency | remap-istanbul |
Current Version | 0.8.0 |
Type | devDependency |
This version is covered by your current version range and after updating it in your project the build failed.
As remap-istanbul is “only” a devDependency of this project it might not break production or downstream projects, but “only” your build or test tools – preventing new deploys or publishes.
I recommend you give this issue a high priority. I’m sure you can resolve this 💪
intern-client
(#107 @jdonaghue)The new version differs by 2 commits .
d42eeed
bump version to 0.8.1 (#108)
808e352
Fix issues with running remap-istanbul
in amd context (#107)
See the full diff.
There is a collection of frequently asked questions and of course you may always ask my humans.
Your Greenkeeper Bot 🌴
Currently, launch tries to remove the fastlane folder and files that are copied over for and iOS related upload. This spits out an error message if those files don't exist, for instance during the hockey action when only trying to upload an Android build.
We should prevent that log from happening.
I noticed that when I run launch testflight the build doesn't actually seem to get updated. I'm not sure if it's only the version file, or the entire folder, but when I tried to push to itunes connect it errored out saying that a build with that version number had already been submitted, even though that was the old version number and not the number I was using in the build I just generated.
To fix, I deleted the entire .build directory from my project, then re-built and submitted and it uploaded the newer version as expected. Perhaps the easy fix is to rm the entire build folder upon rebuilding?
key generation
When using Android's crosswalk with the meteor build tool to do a clean build on a project, the first build often does not output the crosswalk APKs. See:
meteor/meteor#7291
meteor/meteor#6756
You can get around this by running the cordova build script directly in the generated Android project. This is faster than doing an entire meteor build again (though that also works). But, this also produces APKs with a slightly different name than using the meteor build tool itself.
Here is a complete solution:
./.build/android/project/cordova/build --release
mv ./.build/android/project/build/outputs/apk/project-armv7-release-unsigned.apk ./.build/android/project/build/outputs/apk/android-armv7-release-unsigned.apk
mv ./.build/android/project/build/outputs/apk/project-x86-release-unsigned.apk ./.build/android/project/build/outputs/apk/android-x86-release-unsigned.apk
Until this is resolved, we should check to see if any APKs are generated during an android build, and rerun the cordova script manually, and update the names of the APKs.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.