Electrode Native
v0.27
v0.27
  • Introduction
  • INTRODUCTION
    • Overview
      • What is Electrode Native
      • Why use Electrode Native
      • What is a MiniApp
      • Electrode Native workflow
      • Native dependencies management
      • JS/Native communication
      • Requirements
      • Upgrading Electrode Native
      • Contributing
  • QUICK START
    • Building a Movie application
  • REFERENCE
    • Container
      • What's inside
      • Publication
      • Integration
      • Initialization
      • Launching MiniApps
    • Cauldron
      • Structure
      • Setup
      • Compatibility checks
      • Guidelines
    • Manifest
      • Override
      • Native Modules
      • Configurable Modules
    • Runner
    • APIs
      • Project Generation
      • Implementation
      • Versioning
      • Guidelines
    • Bridge
      • Message Types
      • Communication
      • Leveraging APIs
    • CLI
      • Global CLI
      • Local CLI
    • GLOSSARY
  • CLI COMMANDS
    • add
    • binarystore
      • add
      • get
      • remove
    • code-push
      • patch
      • release
      • promote
    • compat-check
    • create-api-impl
    • create-api
    • create-container
    • publish-container
    • transform-container
    • create-miniapp
    • link
    • regen-api
    • regen-api-impl
    • run-android
    • run-ios
    • start
    • unlink
    • upgrade-miniapp
    • why
    • cauldron add
      • dependencies
      • file
      • jsapiimpls
      • miniapps
      • nativeapp
      • publisher
    • cauldron config
      • get
      • set
    • cauldron del
      • dependencies
      • file
      • jsapiimpls
      • miniapps
      • nativeapp
    • cauldron get
      • config
      • dependency
      • nativeapp
    • cauldron repo
      • add
      • clear
      • current
      • list
      • remove
      • use
    • cauldron update
      • dependencies
      • file
      • jsapiimpls
      • miniapps
      • nativeapp
    • cauldron batch
    • cauldron regen-container
    • cauldron upgrade
    • platform
      • plugins
        • list
        • search
      • config
        • set
        • get
        • del
        • list
      • install
      • versions
      • uninstall
      • use
Powered by GitBook
On this page
  • Description
  • Currently Available Official Transformers
  • Syntax
  • Related commands
  1. CLI COMMANDS

transform-container

Previouspublish-containerNextcreate-miniapp

Last updated 6 years ago

Description

  • This command can be used to transform a local Container using a given Container transformer.

Currently Available Official Transformers

  • Can be used to patch one or more pbxproj (iOS project file) included in the Container, in specific ways.

  • Can be used to update Build Configuration(s) -build settings- of a generated iOS Container.

    • This transformer allows for executing an arbitrary script to transform the Container in some custom way. It supports transformation of both iOS and Android Containers.

    • Can be used to apply one or more sequential git patches to the Container.

Syntax

ern transformer-container

Options

--containerPath

  • The local file system path to the directory containing the Container to transform.

  • Default If this option is not provided, the command will look for a Container in the default platform directory ~/.ern/containergen/out/[platform].

--descriptor

  • A complete native application descriptor

  • If this option is set, the transform-container command will apply all the transformers defined in the Cauldron for the matched descriptor. In that case, the --transfomer and --platform options should not be provided.

--platform/-p

  • Specify the native platform of the target Container to transform.

  • This option is required, there is no default (unless --descriptor is used)

--transformer/-t

  • Specify the Container transformer to use (for ex build-config).

  • Can also include a specific version or a version range (for ex build-config@1.0.0 or build-config@^1.0.0)

  • If no version is specified, the latest available version of the publisher will be used at the time of publication (this is a bit risky given that new major publisher versions will contain breaking changes. We recommend that you use a specific version or version range allowing minor and patch updates only)

  • It is also possible to pass a local file system path to a Container transformer package (only used for transformers development).

  • This option is required, there is no default (unles --descriptor is used)

--extra/-e

  • Extra configuration specific to the transformer (as json)

  • Some transformers might not need any extra configuration. Check the specific Container transformer documentation for reference.

  • There is three different ways to provide the json extra configuration :

    • As a json string

      For example --extra '{"configKey": "configValue"}'

    • As a file path

      For example --extra /Users/username/my-transformer-config.json

      In that case, the configuration will be read from the file

    • As a Cauldron file path

      For example --extra cauldron://config/publishers/my-transformer-config.json

      In that case, the configuration will be read from the file stored in Cauldron.

      For this way to work, the file must exist in Cauldron (you can add a file to the cauldron by using the [ern cauldron add file] command).

Related commands

[ern cauldron add file]: ./add/file.md

| Create a new Container (native or JavaScript only) locally to the workstation. | Publish a Container.

pbxproj
build-config
script
git-patch
ern create-container
ern publish-container