generator-wolmo-bootstrap-rn
Advanced tools
Comparing version 1.6.0 to 1.7.0
@@ -5,2 +5,13 @@ # Changelog | ||
## [1.7.0] - 2021-03-19 | ||
- Update to `redux-recompose` v3 | ||
- Updated some files and libs to support React Native 0.64 | ||
- Fixed iOS base schema | ||
- Updated some files to support React Native Reanimated v2 (`babel.config.js` and `MainApplication`) | ||
- Fixed React Hook Form validations | ||
- Deleted `android.enableR8=false` (deprecated) | ||
- Updated Firebase dependencies | ||
- Updated `installPods` task with `npx pod-install` command | ||
- Refactored some files | ||
## [1.6.0] - 2020-12-22 | ||
@@ -7,0 +18,0 @@ - Fixed errors in the `Login` screen |
@@ -60,3 +60,3 @@ function updateAppBuildGradle() { | ||
'# Add any project specific keep options here:', | ||
`# Add any project specific keep options here:\n# Hermes\n-keep class com.facebook.hermes.unicode.** { *; }\n-keep class com.facebook.jni.** { *; }\n\n# react-native-config\n-keep class com.${this.projectName.toLowerCase()}.BuildConfig { *; }` | ||
`# Add any project specific keep options here:\n# Hermes\n-keep class com.facebook.hermes.unicode.** { *; }\n-keep class com.facebook.jni.** { *; }\n\n# react-native-config\n-keep class com.${this.projectName.toLowerCase()}.BuildConfig { *; }\n\n# react-native-reanimated v2\n-keep class com.facebook.react.turbomodule.** { *; }` | ||
); | ||
@@ -68,13 +68,27 @@ this.fs.write(`${this.projectName}/android/app/proguard-rules.pro`, updatedProguardRulesContent); | ||
const gradleProperties = this.fs.read(`${this.projectName}/android/gradle.properties`); | ||
let updatedGradleProperties = gradleProperties.replace( | ||
const updatedGradleProperties = gradleProperties.replace( | ||
'# org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8', | ||
'org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8' | ||
); | ||
updatedGradleProperties = updatedGradleProperties.replace( | ||
'android.enableJetifier=true', | ||
'android.enableJetifier=true\nandroid.enableR8=false' | ||
); | ||
this.fs.write(`${this.projectName}/android/gradle.properties`, updatedGradleProperties); | ||
} | ||
function addRNReanimatedConfig() { | ||
const mainActivityContent = this.fs.read( | ||
`${this.projectName}/android/app/src/main/java/com/${this.projectName}/MainApplication.java` | ||
); | ||
let updatedMainApplicationContent = mainActivityContent.replace( | ||
'import java.util.List;', | ||
'import java.util.List;\nimport com.facebook.react.bridge.JSIModulePackage;\nimport com.swmansion.reanimated.ReanimatedJSIModulePackage;' | ||
); | ||
updatedMainApplicationContent = updatedMainApplicationContent.replace( | ||
'return "index";', | ||
'return "index";\n\t\t\t\t}\n\n\t\t\t\t@Override\n\t\t\t\tprotected JSIModulePackage getJSIModulePackage() {\n\t\t\t\t\treturn new ReanimatedJSIModulePackage();' | ||
); | ||
this.fs.write( | ||
`${this.projectName}/android/app/src/main/java/com/${this.projectName}/MainApplication.java`, | ||
updatedMainApplicationContent | ||
); | ||
} | ||
module.exports = function androidProjectSetup() { | ||
@@ -85,2 +99,3 @@ updateAppBuildGradle.bind(this)(); | ||
updateGradleProperties.bind(this)(); | ||
addRNReanimatedConfig.bind(this)(); | ||
}; |
@@ -5,2 +5,3 @@ module.exports = function babelConfigSetup() { | ||
plugins: [ | ||
'react-native-reanimated/plugin', | ||
'import-glob', | ||
@@ -7,0 +8,0 @@ [ |
module.exports = function cleanTargetsFromPods() { | ||
let podfileContent = this.fs.read(`${this.projectName}/ios/Podfile`); | ||
let numberLineTargetTest = null; | ||
let numberLineTvOSTest = null; | ||
podfileContent = podfileContent.split('\n'); | ||
@@ -10,15 +9,9 @@ podfileContent.forEach((line, index) => { | ||
} | ||
if (line.includes(`target '${this.projectName}-tvOS'`)) { | ||
numberLineTvOSTest = index; | ||
} | ||
}); | ||
podfileContent = [ | ||
...podfileContent.slice(0, numberLineTargetTest), | ||
...podfileContent.slice(numberLineTargetTest + 4, numberLineTvOSTest), | ||
...podfileContent.slice(numberLineTvOSTest + 8) | ||
...podfileContent.slice(numberLineTargetTest + 4) | ||
].join('\n'); | ||
this.fs.write(`${this.projectName}/ios/Podfile`, podfileContent); | ||
this.fs.delete(`${this.projectName}/ios/${this.projectName}Tests/`); | ||
this.fs.delete(`${this.projectName}/ios/${this.projectName}-tvOS/`); | ||
this.fs.delete(`${this.projectName}/ios/${this.projectName}-tvOSTests/`); | ||
}; |
@@ -11,3 +11,2 @@ const schemeBase = require('./schemeBase'); | ||
this.fs.delete(commonPath(this.projectName)); | ||
this.fs.delete(commonPath(`${this.projectName}-tvOS`)); | ||
}; |
@@ -6,99 +6,98 @@ // eslint-disable-next-line no-template-curly-in-string | ||
return `<?xml version="1.0" encoding="UTF-8"?> | ||
<Scheme | ||
LastUpgradeVersion = "1130" | ||
version = "1.3"> | ||
<BuildAction | ||
parallelizeBuildables = "YES" | ||
buildImplicitDependencies = "YES"> | ||
<PreActions> | ||
<ExecutionAction | ||
ActionType = "Xcode.IDEStandardExecutionActionsCore.ExecutionActionType.ShellScriptAction"> | ||
<ActionContent | ||
title = "Run Script" | ||
scriptText = "cp "${PROJECT_DIR}/../.${envName}.env" "${PROJECT_DIR}/../.env" "> | ||
</ActionContent> | ||
</ExecutionAction> | ||
</PreActions> | ||
<BuildActionEntries> | ||
<BuildActionEntry | ||
buildForTesting = "YES" | ||
buildForRunning = "YES" | ||
buildForProfiling = "YES" | ||
buildForArchiving = "YES" | ||
buildForAnalyzing = "YES"> | ||
<BuildableReference | ||
BuildableIdentifier = "primary" | ||
BlueprintIdentifier = "13B07F861A680F5B00A75B9A" | ||
BuildableName = "${this.projectName}.app" | ||
BlueprintName = "${this.projectName}" | ||
ReferencedContainer = "container:${this.projectName}.xcodeproj"> | ||
</BuildableReference> | ||
</BuildActionEntry> | ||
</BuildActionEntries> | ||
</BuildAction> | ||
<TestAction | ||
buildConfiguration = "${buildConfig}" | ||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" | ||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" | ||
shouldUseLaunchSchemeArgsEnv = "YES"> | ||
<Testables> | ||
<TestableReference | ||
skipped = "NO"> | ||
<BuildableReference | ||
BuildableIdentifier = "primary" | ||
BlueprintIdentifier = "00E356ED1AD99517003FC87E" | ||
BuildableName = "${this.projectName}Tests.xctest" | ||
BlueprintName = "${this.projectName}Tests" | ||
ReferencedContainer = "container:${this.projectName}.xcodeproj"> | ||
</BuildableReference> | ||
</TestableReference> | ||
</Testables> | ||
</TestAction> | ||
<LaunchAction | ||
buildConfiguration = "${buildConfig}" | ||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" | ||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" | ||
launchStyle = "0" | ||
useCustomWorkingDirectory = "NO" | ||
ignoresPersistentStateOnLaunch = "NO" | ||
debugDocumentVersioning = "YES" | ||
debugServiceExtension = "internal" | ||
allowLocationSimulation = "YES"> | ||
<BuildableProductRunnable | ||
runnableDebuggingMode = "0"> | ||
<BuildableReference | ||
BuildableIdentifier = "primary" | ||
BlueprintIdentifier = "13B07F861A680F5B00A75B9A" | ||
BuildableName = "${this.projectName}.app" | ||
BlueprintName = "${this.projectName}" | ||
ReferencedContainer = "container:${this.projectName}.xcodeproj"> | ||
</BuildableReference> | ||
</BuildableProductRunnable> | ||
</LaunchAction> | ||
<ProfileAction | ||
buildConfiguration = "${buildConfig}" | ||
shouldUseLaunchSchemeArgsEnv = "YES" | ||
savedToolIdentifier = "" | ||
useCustomWorkingDirectory = "NO" | ||
debugDocumentVersioning = "YES"> | ||
<BuildableProductRunnable | ||
runnableDebuggingMode = "0"> | ||
<BuildableReference | ||
BuildableIdentifier = "primary" | ||
BlueprintIdentifier = "13B07F861A680F5B00A75B9A" | ||
BuildableName = "${this.projectName}.app" | ||
BlueprintName = "${this.projectName}" | ||
ReferencedContainer = "container:${this.projectName}.xcodeproj"> | ||
</BuildableReference> | ||
</BuildableProductRunnable> | ||
</ProfileAction> | ||
<AnalyzeAction | ||
buildConfiguration = "${buildConfig}"> | ||
</AnalyzeAction> | ||
<ArchiveAction | ||
buildConfiguration = "${buildConfig}" | ||
revealArchiveInOrganizer = "YES"> | ||
</ArchiveAction> | ||
</Scheme> | ||
`; | ||
<Scheme | ||
LastUpgradeVersion = "1210" | ||
version = "1.7"> | ||
<BuildAction | ||
parallelizeBuildables = "YES" | ||
buildImplicitDependencies = "YES"> | ||
<PreActions> | ||
<ExecutionAction | ||
ActionType = "Xcode.IDEStandardExecutionActionsCore.ExecutionActionType.ShellScriptAction"> | ||
<ActionContent | ||
title = "Run Script" | ||
scriptText = "cp "${PROJECT_DIR}/../.${envName}.env" "${PROJECT_DIR}/../.env" "> | ||
<EnvironmentBuildable> | ||
<BuildableReference | ||
BuildableIdentifier = "primary" | ||
BlueprintIdentifier = "13B07F861A680F5B00A75B9A" | ||
BuildableName = "${this.projectName}.app" | ||
BlueprintName = "${this.projectName}" | ||
ReferencedContainer = "container:${this.projectName}.xcodeproj"> | ||
</BuildableReference> | ||
</EnvironmentBuildable> | ||
</ActionContent> | ||
</ExecutionAction> | ||
</PreActions> | ||
<BuildActionEntries> | ||
<BuildActionEntry | ||
buildForTesting = "YES" | ||
buildForRunning = "YES" | ||
buildForProfiling = "YES" | ||
buildForArchiving = "YES" | ||
buildForAnalyzing = "YES"> | ||
<BuildableReference | ||
BuildableIdentifier = "primary" | ||
BlueprintIdentifier = "13B07F861A680F5B00A75B9A" | ||
BuildableName = "${this.projectName}.app" | ||
BlueprintName = "${this.projectName}" | ||
ReferencedContainer = "container:${this.projectName}.xcodeproj"> | ||
</BuildableReference> | ||
</BuildActionEntry> | ||
</BuildActionEntries> | ||
</BuildAction> | ||
<TestAction | ||
buildConfiguration = "${buildConfig}" | ||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" | ||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" | ||
shouldUseLaunchSchemeArgsEnv = "YES"> | ||
<Testables> | ||
</Testables> | ||
</TestAction> | ||
<LaunchAction | ||
buildConfiguration = "${buildConfig}" | ||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" | ||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" | ||
launchStyle = "0" | ||
useCustomWorkingDirectory = "NO" | ||
ignoresPersistentStateOnLaunch = "NO" | ||
debugDocumentVersioning = "YES" | ||
debugServiceExtension = "internal" | ||
allowLocationSimulation = "YES"> | ||
<BuildableProductRunnable | ||
runnableDebuggingMode = "0"> | ||
<BuildableReference | ||
BuildableIdentifier = "primary" | ||
BlueprintIdentifier = "13B07F861A680F5B00A75B9A" | ||
BuildableName = "${this.projectName}.app" | ||
BlueprintName = "${this.projectName}" | ||
ReferencedContainer = "container:${this.projectName}.xcodeproj"> | ||
</BuildableReference> | ||
</BuildableProductRunnable> | ||
</LaunchAction> | ||
<ProfileAction | ||
buildConfiguration = "${buildConfig}" | ||
shouldUseLaunchSchemeArgsEnv = "YES" | ||
savedToolIdentifier = "" | ||
useCustomWorkingDirectory = "NO" | ||
debugDocumentVersioning = "YES"> | ||
<BuildableProductRunnable | ||
runnableDebuggingMode = "0"> | ||
<BuildableReference | ||
BuildableIdentifier = "primary" | ||
BlueprintIdentifier = "13B07F861A680F5B00A75B9A" | ||
BuildableName = "${this.projectName}.app" | ||
BlueprintName = "${this.projectName}" | ||
ReferencedContainer = "container:${this.projectName}.xcodeproj"> | ||
</BuildableReference> | ||
</BuildableProductRunnable> | ||
</ProfileAction> | ||
<AnalyzeAction | ||
buildConfiguration = "${buildConfig}"> | ||
</AnalyzeAction> | ||
<ArchiveAction | ||
buildConfiguration = "${buildConfig}" | ||
revealArchiveInOrganizer = "YES"> | ||
</ArchiveAction> | ||
</Scheme> | ||
`; | ||
}; |
@@ -18,3 +18,3 @@ module.exports = function packgeJsonScripts() { | ||
packageJson.scripts['android:build.production'] = | ||
'cd android && ./gradlew clean && ./gradlew bundleProductionRelease'; | ||
'cd android && ./gradlew clean && ./gradlew assembleProductionRelease'; | ||
packageJson.scripts['test:watch'] = 'jest --watch'; | ||
@@ -21,0 +21,0 @@ packageJson.scripts['test:debug'] = 'node --inspect node_modules/.bin/jest --runInBand'; |
@@ -7,3 +7,4 @@ module.exports = function babelConfigSetup() { | ||
singleQuote: true, | ||
trailingComma: 'all',`; | ||
trailingComma: 'all', | ||
arrowParens: 'avoid',`; | ||
@@ -10,0 +11,0 @@ const newContentPrettier = `bracketSpacing: true, |
@@ -5,3 +5,3 @@ function addConfigToAndroidFiles() { | ||
'// NOTE: Do not place your application dependencies here; they belong', | ||
"classpath 'com.google.firebase:firebase-crashlytics-gradle:2.2.0'\n\t\t// NOTE: Do not place your application dependencies here; they belong" | ||
"classpath 'com.google.firebase:firebase-crashlytics-gradle:2.5.1'\n\t\t// NOTE: Do not place your application dependencies here; they belong" | ||
); | ||
@@ -8,0 +8,0 @@ this.fs.write(`${this.projectName}/android/build.gradle`, buildGradleContent); |
@@ -42,3 +42,3 @@ function configureGoogleServices() { | ||
'// NOTE: Do not place your application dependencies here; they belong', | ||
"classpath 'com.google.gms:google-services:4.3.3'\n\t\t// NOTE: Do not place your application dependencies here; they belong" | ||
"classpath 'com.google.gms:google-services:4.3.4'\n\t\t// NOTE: Do not place your application dependencies here; they belong" | ||
); | ||
@@ -45,0 +45,0 @@ this.fs.write(`${this.projectName}/android/build.gradle`, buildGradleContent); |
@@ -5,3 +5,3 @@ module.exports = function firebasePerformanceSetup() { | ||
'// NOTE: Do not place your application dependencies here; they belong', | ||
"classpath 'com.google.firebase:perf-plugin:1.3.1'\n\t\t// NOTE: Do not place your application dependencies here; they belong" | ||
"classpath 'com.google.firebase:perf-plugin:1.3.5'\n\t\t// NOTE: Do not place your application dependencies here; they belong" | ||
); | ||
@@ -8,0 +8,0 @@ this.fs.write(`${this.projectName}/android/build.gradle`, buildGradleContent); |
@@ -5,3 +5,7 @@ const runCommand = require('../runCommand'); | ||
return runCommand({ | ||
command: ['pod', ['install', '--repo-update'], { cwd: `${process.cwd()}/${this.projectName}/ios` }], | ||
command: [ | ||
'npx', | ||
['pod-install', 'ios', '--non-interactive'], | ||
{ cwd: `${process.cwd()}/${this.projectName}` } | ||
], | ||
loadingMessage: 'Installing Pods...', | ||
@@ -8,0 +12,0 @@ successMessage: 'Pods ready!', |
@@ -26,6 +26,5 @@ require('colors'); | ||
// Login and SignUp next steps | ||
console.log('● A basic login feature has been added. The probably next steps there are:'.cyan); | ||
console.log('● A basic login and signup feature has been added. The probably next steps there are:'.cyan); | ||
console.log(' Add proper validations and styles to the login form'.cyan); | ||
console.log(' Integrate login and logout with API'.cyan); | ||
console.log(' Sign up?'.cyan); | ||
} | ||
@@ -32,0 +31,0 @@ |
@@ -5,5 +5,5 @@ import 'react-native-gesture-handler'; | ||
import { persistStore } from 'redux-persist'; | ||
import { PersistGate } from 'redux-persist/integration/react'; | ||
import '@config'; | ||
import store from '@redux/store'; | ||
import { PersistGate } from 'redux-persist/integration/react'; | ||
@@ -10,0 +10,0 @@ import App from './src/app'; |
@@ -39,2 +39,3 @@ const { defaults } = require('jest-config'); | ||
'!**/node_modules/**', | ||
'!**/.history/**', | ||
'!**/build/**', | ||
@@ -41,0 +42,0 @@ '!**/migrations/**', |
// TODO: Uncomment lines when you start using them | ||
// import analytics from '@react-native-firebase/analytics'; TODO: Use later when you want to catch some redux actions here in this middleware | ||
// TODO: Use later when you want to catch some redux actions here in this middleware | ||
// import analytics from '@react-native-firebase/analytics'; | ||
import { Dispatch } from 'react'; | ||
@@ -4,0 +5,0 @@ // import { ReduxObject } from '@interfaces/reduxInterfaces'; |
@@ -7,3 +7,3 @@ import i18next from 'i18next'; | ||
const emailRegex = /^(([^<>()·=~ºªÇ¨?¿*^|#¢∞¬÷"$%"≠´}{![\]\\.,;:\s@"]+(\.[^<>·$%&/=~ºªÇ¨?¿*^|#¢∞¬÷""≠´}{!()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/; | ||
const alphanumericRegex = /^[a-zA-Z0-9]*$/g; | ||
const alphanumericRegex = /^[a-záéíóúäëïºöüA-ZÁÉÍÓÚÄËÏÖÜ0-9 ]*$/g; | ||
const onlyTextRegex = /^[a-zA-Z\s]*$/; | ||
@@ -13,18 +13,28 @@ const onlyNumberRegex = /^[0-9]*$/g; | ||
// VALIDATIONS | ||
export const validateRequired = { required: i18next.t('VALIDATIONS:REQUIRED_FIELD') }; | ||
export const validateRequired = { | ||
required: { | ||
value: true, | ||
message: i18next.t('VALIDATIONS:REQUIRED_FIELD') | ||
} | ||
}; | ||
export const validateEmail = { | ||
pattern: { value: emailRegex, message: i18next.t('VALIDATIONS:INVALID_EMAIL') } | ||
pattern: { | ||
value: emailRegex, | ||
message: i18next.t('VALIDATIONS:INVALID_EMAIL') | ||
} | ||
}; | ||
export const validateAlphanumeric = { | ||
pattern: { value: alphanumericRegex, message: i18next.t('VALIDATIONS:ALPHANUMERIC') } | ||
validate: (value: string) => | ||
!!value.match(alphanumericRegex) || (i18next.t('VALIDATIONS:ALPHANUMERIC') as string) | ||
}; | ||
export const validateOnlyText = { | ||
pattern: { value: onlyTextRegex, message: i18next.t('VALIDATIONS:ONLY_TEXT') } | ||
validate: (value: string) => !!value.match(onlyTextRegex) || (i18next.t('VALIDATIONS:ONLY_TEXT') as string) | ||
}; | ||
export const validateOnlyNumber = { | ||
pattern: { value: onlyNumberRegex, message: i18next.t('VALIDATIONS:ONLY_NUMBERS') } | ||
validate: (value: string) => | ||
!!value.match(onlyNumberRegex) || (i18next.t('VALIDATIONS:ONLY_NUMBERS') as string) | ||
}; | ||
@@ -42,3 +52,3 @@ | ||
validate: (value: string) => | ||
value.length === equalValue || i18next.t('VALIDATIONS:EQUAL_LENGTH', { count: equalValue }) | ||
value.length === equalValue || (i18next.t('VALIDATIONS:EQUAL_LENGTH', { count: equalValue }) as string) | ||
}); |
const Generator = require('yeoman-generator'); | ||
const completeREADME = require('./tasks/completeREADME'); | ||
const bitriseInitialization = require('./tasks/bitriseInitialization'); | ||
@@ -51,2 +52,3 @@ const nextSteps = require('./tasks/nextSteps'); | ||
end() { | ||
completeREADME.bind(this)(); | ||
nextSteps.bind(this)(); | ||
@@ -53,0 +55,0 @@ } |
{ | ||
"name": "generator-wolmo-bootstrap-rn", | ||
"version": "1.6.0", | ||
"version": "1.7.0", | ||
"description": "A project generator for react native applications with some boilerplates already configured and ready to use.", | ||
@@ -29,3 +29,3 @@ "files": [ | ||
"acorn": "^7.1.1", | ||
"apisauce": "^1.1.1", | ||
"apisauce": "^2.0.1", | ||
"colors": "^1.1.2", | ||
@@ -32,0 +32,0 @@ "deep-extend": "^0.5.1", |
@@ -82,32 +82,4 @@ # Wolmo Bootstrap: React Native | ||
For bootstraping your own project using the template generator script you'll need to follow these steps: | ||
Follow our Kickoff guide [here](./KICKOFF.md) | ||
1. Clone this repo | ||
2. Run `yarn install` inside the repository folder | ||
3. Run `yo yourPathToWolmo/generators/app/index.js` outside the repository folder, you'll need [Yeoman](https://yeoman.io/learning/index.html) installed for this. Also, the argument `-v` can be used for logging. | ||
4. Some prompts will pop up on your terminal. Pick whatever configuration works best for your current proyect. | ||
5. After the script is finished, your project folder will be successfully generated with all the necessary yarn dependencies installed. Do `cd you/project/path`. | ||
6. Start budler using `yarn start`. | ||
7. Run `npx react-native run-ios --scheme qa` or `yarn ios` for iOS and `npx react-native run-android --variant=qaDebug` or `yarn android` for Android. | ||
8. Start working on your project! | ||
### How do you have to configure Bitrise? | ||
You will have to complete the [`bitriseInfo.json`](/generators/bitrise/bitriseInfo.json) with the next Info: | ||
``` | ||
"repositoryUrlSsh": "", // What's your repository url? (ssh only) | ||
"publicApp": false, // If true then the app visibility setting will be public, in case of false it will be private (boolean value) | ||
"repositorySlug": "", // Write the repo slug (The name of your repo not the url) | ||
"repoOwner": "", // Who is the owner of the repo? | ||
"gitProvider": "", // The git provider you are using, it can be 'github', 'bitbucket', 'gitlab', 'gitlab-self-hosted' or 'custom' | ||
"gitToken": "", // Please, write your git token (github, gitlab ot bitbucket) with permissions to create ssh keys here (write it with the format 'token <access_token>' if it is github, 'Bearer <access_token>' if it's gitlab or bitbucket) | ||
"bitriseToken": "", // Please, write your bitrise token with permissions to create ssh keys here | ||
"bitriseOrganizationSlug": "", // Please, write your Bitrise organization slug | ||
"projectPath": "", // projectPath in case that you want to add the bitrise.yml file to your local repository. This param is in case that you run the script without running the bootstrap | ||
"projectName": "" // Project name to complete the bitrise.yml file with correct info. This param is in case that you run the script without running the bootstrap | ||
``` | ||
To run only the bitrise script you have to run: `yo yourPathToWolmo/generators/bitrise/bitrise.js` you'll need [Yeoman](https://yeoman.io/learning/index.html) | ||
## Contributing | ||
@@ -114,0 +86,0 @@ |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
1779334
218
4090
125
2
+ Addedapisauce@2.1.6(transitive)
- Removedapisauce@1.1.5(transitive)
- Removedramda@0.25.0(transitive)
Updatedapisauce@^2.0.1