Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Management of Environment Variables with YAMLs

Management of Environment Variables with YAMLs

417.72KI

May 10, 2019
Tweet

More Decks by 417.72KI

Other Decks in Programming

Transcript

  1. struct Me { let name = "Takuhiro Muta" let aka

    = "417.72KI" let experienceYears = 5 let company = "iRidge inc." let twitter = "417_72ki" let qiita = "417_72ki" let gitHub = "417-72KI" let like = [ "BEMANI", "Real Escape Game", "Bang Dream!", "LoveLive! Sunshine!!", "etc…" ] } TFMGEFTDSJQUJPO
  2. #

  3. 4PVSDF:".-T is_debug: true cognito: provider_key: DevHogeProvider client_id: devhogeclient pool_id: ap-northeast-devhoge

    region_name: ap-northeast-1 CBTFZNM DPHOJUPZNM web_front: terms: https://dev.~ faq: https://dev.~ privacy: https://dev.~ XFC@GSPOUZNM is_debug: false cognito: provider_key: HogeProvider client_id: hogeclient pool_id: ap-northeast-hoge region_name: ap-northeast-1 web_front: terms: https://prod.~ faq: https://prod.~ privacy: https://prod.~ FOWQSPEVDUJPOZNM
  4. 3VO4DSJQU if [ "${CONFIGURATION}" = 'Release' ]; then ENVIRONMENT='production' elif

    [ "${CONFIGURATION}" = 'AdHoc' ]; then ENVIRONMENT='staging' else ENVIRONMENT='development' fi ${PODS_ROOT}/BuildConfig.swift/buildconfigswift -o ${SRCROOT}/Libs/BuildConfig_swift -e $ENVIRONMENT ${SRCROOT}/Resources/Config
  5. 3VO4DSJQU if [ "${CONFIGURATION}" = 'Release' ]; then ENVIRONMENT='production' elif

    [ "${CONFIGURATION}" = 'AdHoc' ]; then ENVIRONMENT='staging' else ENVIRONMENT='development' fi ${PODS_ROOT}/BuildConfig.swift/buildconfigswift -o ${SRCROOT}/Libs/BuildConfig_swift -e $ENVIRONMENT ${SRCROOT}/Resources/Config 4FUFOWJSPONFOUDPSSFTQPOEJOHUP#VJME$POpHVSBUJPO
  6. 3VO4DSJQU if [ "${CONFIGURATION}" = 'Release' ]; then ENVIRONMENT='production' elif

    [ "${CONFIGURATION}" = 'AdHoc' ]; then ENVIRONMENT='staging' else ENVIRONMENT='development' fi ${PODS_ROOT}/BuildConfig.swift/buildconfigswift -o ${SRCROOT}/Libs/BuildConfig_swift -e $ENVIRONMENT ${SRCROOT}/Resources/Config 4FUPVUQVUEJSFDUPSZ
  7. 3VO4DSJQU if [ "${CONFIGURATION}" = 'Release' ]; then ENVIRONMENT='production' elif

    [ "${CONFIGURATION}" = 'AdHoc' ]; then ENVIRONMENT='staging' else ENVIRONMENT='development' fi ${PODS_ROOT}/BuildConfig.swift/buildconfigswift -o ${SRCROOT}/Libs/BuildConfig_swift -e $ENVIRONMENT ${SRCROOT}/Resources/Config 4FUEJSFDUPSZDPOUBJOTSFTPVSDF:".-T
  8. #VJME$POpHHFOFSBUFETXJGU struct BuildConfig: Codable { static let `default`: BuildConfig =

    .load() let cognito: Cognito let isDebug: Bool let webFront: WebFront } extension BuildConfig { struct Cognito: Codable { let clientId: String let poolId: String let providerKey: String let regionName: String } } extension BuildConfig { struct WebFront: Codable { let faq: String let privacy: String let terms: String } }
  9. CVJMEHSBEMF buildTypes { debug { buildConfigField 'boolean', 'ACCESS_LOG', 'false' buildConfigField

    'String', 'WEBAPI_URL', '"http://dev.example.com/api/"' } release { buildConfigField 'boolean', 'ACCESS_LOG', 'true' buildConfigField 'String', 'WEBAPI_URL', '"http://example.com/api/"' } }
  10. #VJME$POpHKBWB EFCVH public final class BuildConfig { public static final

    boolean DEBUG = Boolean.parseBoolean(“true"); ɾ ɾ ɾ // Fields from build type: debug public static final boolean ACCESS_LOG = false; public static final String WEBAPI_URL = "http://dev.example.com/api/"; }
  11. #VJME$POpHKBWB SFMFBTF public final class BuildConfig { public static final

    boolean DEBUG = false; ɾ ɾ ɾ // Fields from build type: release public static final boolean ACCESS_LOG = true; public static final String WEBAPI_URL = "http://example.com/api/"; }