All Projects → soulchild → Antenna

soulchild / Antenna

Licence: mit
Painless iOS over-the-air enterprise distribution

Programming Languages

ruby
36898 projects - #4 most used programming language

Labels

Projects that are alternatives of or similar to Antenna

Simple S3 Setup
Code examples used in the post "How to Setup Amazon S3 in a Django Project"
Stars: ✭ 46 (-31.34%)
Mutual labels:  s3
Pierone
STUPS' Docker registry with S3 backend, immutable tags and SCM source tracking
Stars: ✭ 57 (-14.93%)
Mutual labels:  s3
Cloud Volume
Read and write Neuroglancer datasets programmatically.
Stars: ✭ 63 (-5.97%)
Mutual labels:  s3
S3 Lambda
Lambda functions over S3 objects with concurrency control (each, map, reduce, filter)
Stars: ✭ 1,061 (+1483.58%)
Mutual labels:  s3
Arc
📎 Flexible file upload and attachment library for Elixir
Stars: ✭ 1,087 (+1522.39%)
Mutual labels:  s3
Thanos
Highly available Prometheus setup with long term storage capabilities. A CNCF Incubating project.
Stars: ✭ 9,820 (+14556.72%)
Mutual labels:  s3
Aws Data Replication Hub
Seamless User Interface for replicating data into AWS.
Stars: ✭ 40 (-40.3%)
Mutual labels:  s3
S3 Blob Store
☁️ Amazon S3 blob-store
Stars: ✭ 66 (-1.49%)
Mutual labels:  s3
Scrapy S3pipeline
Scrapy pipeline to store chunked items into Amazon S3 or Google Cloud Storage bucket.
Stars: ✭ 57 (-14.93%)
Mutual labels:  s3
Cyberduck
Cyberduck is a libre FTP, SFTP, WebDAV, Amazon S3, Backblaze B2, Microsoft Azure & OneDrive and OpenStack Swift file transfer client for Mac and Windows.
Stars: ✭ 1,080 (+1511.94%)
Mutual labels:  s3
Aws Testing Library
Chai (https://chaijs.com) and Jest (https://jestjs.io/) assertions for testing services built with aws
Stars: ✭ 52 (-22.39%)
Mutual labels:  s3
Tiledb
The Universal Storage Engine
Stars: ✭ 1,072 (+1500%)
Mutual labels:  s3
S3reverse
The format of various s3 buckets is convert in one format. for bugbounty and security testing.
Stars: ✭ 61 (-8.96%)
Mutual labels:  s3
Radosgw Admin4j
A Ceph Object Storage Admin SDK / Client Library for Java ✨🍰✨
Stars: ✭ 50 (-25.37%)
Mutual labels:  s3
Terraform Aws S3 Log Storage
This module creates an S3 bucket suitable for receiving logs from other AWS services such as S3, CloudFront, and CloudTrail
Stars: ✭ 65 (-2.99%)
Mutual labels:  s3
Relax
A tiny release tool to support multi distribution(IPA) on iOS development.
Stars: ✭ 40 (-40.3%)
Mutual labels:  ipa
Rumble
⛈️ Rumble 1.11.0 "Banyan Tree"🌳 for Apache Spark | Run queries on your large-scale, messy JSON-like data (JSON, text, CSV, Parquet, ROOT, AVRO, SVM...) | No install required (just a jar to download) | Declarative Machine Learning and more
Stars: ✭ 58 (-13.43%)
Mutual labels:  s3
Aws
Swift wrapper around AWS API
Stars: ✭ 67 (+0%)
Mutual labels:  s3
React Deploy S3
Deploy create react app's in AWS S3
Stars: ✭ 66 (-1.49%)
Mutual labels:  s3
Undocumented S3 Apis
Undocumented Amazon S3 APIs and third-party extensions
Stars: ✭ 63 (-5.97%)
Mutual labels:  s3

Build Status

Antenna

Antenna aims to take the pain out of creating and distributing all the necessary files for Enterprise iOS over-the-air distribution. It generates the mandatory XML manifest, app icons and an HTML file, automatically extracting all the needed information from the specified .ipa file, and uploads everything via a distribution method of your choice (currently only S3 and local filesystem are supported, but you're encouraged to create other storage backends). The result is a (signed S3) URL, which you may then send to your clients, so they can easily install your app from Mobile Safari with just one tap.

Installation

gem install antenna-ota

Usage

Antenna adds the antenna command to your PATH:

$ antenna

  Antenna

  Painless iOS over-the-air enterprise distribution

  Commands:
    help    Display global or [command] help documentation
    local   Distribute .ipa file to local file system
    s3      Distribute .ipa file over Amazon S3

  Global Options:
    --verbose
    -h, --help           Display help documentation
    -v, --version        Display version information
    -t, --trace          Display backtrace when an error occurs

S3-specific options

    -f, --file FILE                             .ipa file to distribute
    -a, --access-key-id ACCESS_KEY_ID           S3 access key ID
    -s, --secret-access-key SECRET_ACCESS_KEY   S3 secret access key
    -b, --bucket BUCKET                         S3 bucket name
        --[no-]create                           (Don't) create bucket if it doesn't already exist
    -r  --region REGION                         AWS region (optional, e.g. https://mys3.example.com)
    -e  --endpoint ENDPOINT                     S3 endpoint (optional, e.g. https://mys3.example.com)
    -x  --expires EXPIRES                       Expiration of URLs in seconds (optional, e.g. 86400 = one day, one week max)
    -i  --base BASE                             Base filename (optional, defaults to IPA filename without .ipa extension)
    -p  --public                                Use public instead of signed URLs (you'll might want '--acl public-read' also)
        --acl ACL                               Permissions for uploaded files. Must be one of: private, public-read, public-read-write, authenticated-read, bucket-owner-read, bucket-owner-full-control (optional, defaults to private)

Local-specific options

    -f, --file FILE      .ipa file to distribute (searches current directory for .ipa files if not specified)
    -U, --url URL        Base URL all files should be prefixed with
    -i, --base BASE      Base filename (optional, defaults to IPA filename without .ipa extension)

Examples

1. Private, signed URL

Create a new S3 bucket called antenna-ota on Amazon's eu-central-1 S3 cluster and upload OverTheAir.ipa, resulting in a signed URL for distribution:

$ antenna s3 -a <YOUR-S3-ACCESS-KEY> -s <YOUR-S3-SECRET-KEY> --file OverTheAir.ipa --region eu-central-1 --create --bucket antenna-ota
Distributing OverTheAir.ipa ...
Distributing OverTheAir.png ...
Distributing OverTheAir.plist ...
Distributing OverTheAir.html ...
https://antenna-ota.s3.eu-central-1.amazonaws.com/OverTheAir.html?<...signing-parameters...>

2. Public, unsigned URL

Upload OverTheAir.ipa to Amazon's eu-central-1 S3 cluster, resulting in a publically available, unsigned URL for distribution:

$ antenna s3 -a <YOUR-S3-ACCESS-KEY> -s <YOUR-S3-SECRET-KEY> --file OverTheAir.ipa --public --acl public-read --region eu-central-1 --bucket antenna-ota
Distributing OverTheAir.ipa ...
Distributing OverTheAir.png ...
Distributing OverTheAir.plist ...
Distributing OverTheAir.html ...
https://antenna-ota.s3.eu-central-1.amazonaws.com/OverTheAir.html

The resulting URLs show an installation page like the following and can be distributed to your users for installation. The meta-data and app-icon is automatically extracted from the given .ipa file:

Installation site

Note: App icons in any .ipa file are converted from PNG to Apple's CgBI file format and therefore not viewable in most applications, including Chrome and Firefox. Apple applications like (Mobile) Safari or Preview.app know how to handle the format though.

3. Local file system

Distribute OverTheAir.ipa to the local file-system. The resulting files can then be uploaded manually:

$ antenna local --url https://www.example.com/ipa/ --file OverTheAir.ipa
Distributing OverTheAir.ipa ...
Distributing OverTheAir.png ...
Distributing OverTheAir.plist ...
Distributing OverTheAir.html ...
https://www.example.com/ipa/OverTheAir.html

Author

Tobi Kremer (soulchild)

Inspired by Mattt Thompson's iOS toolchain.

Contributing

Bug reports and pull requests are welcome on GitHub.

License

The gem is available as open source under the terms of the MIT License.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].