Skip to content

buildasaurs/xcskarel

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
bin
 
 
 
 
lib
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

xcskarel

Travis Status Gem Version

License Blog Twitter Czechboy0

Quickly manage your Xcode Server & Bots from the command line.

βœ… install

Clone the repo or install from RubyGems

sudo gem install xcskarel

πŸ”© usage

To see all options, run xcskarel --help.

bots

$ xcskarel bots --host 10.99.0.57
[
  {
    "_id": "02440afb1e7a51dc9795319121038f17",
    "name": "buildasaur-release"
  }
]

integrations

$ xcskarel integrations --bot "Builda Archiver" --host 192.168.1.64
[
  {
    "_id": "e5fed3c8bdf03d30278a016e64003a1d",
    "currentStep": "checkout",
    "number": 11
  },
  {
    "_id": "a3ad85e42b7b7edbf43f9dca4a14390f",
    "currentStep": "completed",
    "number": 10,
    "result": "checkout-error"
  }
]

status

$ xcskarel status --host 192.168.1.64
+--------------------------------------------------+----------------------------------+---------+--------------+-----------+-------+
|                                                       https://192.168.1.64                                                       |
+--------------------------------------------------+----------------------------------+---------+--------------+-----------+-------+
| name                                             | id                               | branch  | current_step | result    | count |
+--------------------------------------------------+----------------------------------+---------+--------------+-----------+-------+
| Builda Archiver                                  | 6b3de48352a8126ce7e08ecf85093613 | master  | pending      |           | 11    |
| Builda On Commit                                 | 6c8d3225beff941b3a420554df16cb0d | master  | checkout     |           | 70    |
| BuildaBot [czechboy0/XcodeServerSDK] |-> swift-2 | 3ce25bc9ed5bfffb854947b02600166d | swift-2 | completed    | succeeded | 6     |
+--------------------------------------------------+----------------------------------+---------+--------------+-----------+-------+

start an integration

$ xcskarel integrate --bot "Builda Archiver" --host 192.168.1.64
INFO [2015-09-03 17:04:59.14]: Successfully started integration 11 on Bot "Builda Archiver"
+--------------------------------------------------+----------------------------------+---------+--------------+-----------+-------+
|                                                       https://192.168.1.64                                                       |
+--------------------------------------------------+----------------------------------+---------+--------------+-----------+-------+
| name                                             | id                               | branch  | current_step | result    | count |
+--------------------------------------------------+----------------------------------+---------+--------------+-----------+-------+
| Builda Archiver                                  | 6b3de48352a8126ce7e08ecf85093613 | master  | pending      |           | 11    |
| Builda On Commit                                 | 6c8d3225beff941b3a420554df16cb0d | master  | checkout     |           | 70    |
| BuildaBot [czechboy0/XcodeServerSDK] |-> swift-2 | 3ce25bc9ed5bfffb854947b02600166d | swift-2 | completed    | succeeded | 6     |
+--------------------------------------------------+----------------------------------+---------+--------------+-----------+-------+

integration issues

$ xcskarel issues --bot "Buildasaur Bot"
{
  "buildServiceWarnings": [
    {
      "message": "An error occurred while building, so archiving was skipped."
    }
  ],
  "errors": {
    "unresolvedIssues": [
      {
        "message": "No code signing identities found: No valid signing identities (i.e. certificate and private key pair) matching the team ID β€œ7BJ2984YDK” were found."
      }
    ]
  }
}

you can also specify the Integration id like this xcskarel issues --integration 6b3de48352a8126ce7e08ecf85093613. When you specify a Bot id or a name, however, the last Integration is used.

manage bot configurations in your git repo

  • config list Lists the Xcode Bot configurations found in this folder
  • config new Starts the interactive process of creating a new config from an existing Bot
  • config show Opens the selected config for editing

others

  • xcskarel logs --host 10.99.0.57 --user honzadvorsky - prints build and control logs from the remote Xcode Server
  • xcskarel health --host 10.99.0.57 - health information of the server like uptime etc

server (wraps xcscontrol commands)

  • xcskarel server start - fully starts a local Xcode Server instance
  • xcskarel server stop - stops the local Xcode Server instance
  • xcskarel server restart - restarts the local Xcode Server instance
  • xcskarel server reset - stops and deletes the local Xcode Server instance

xcode

  • xcskarel xcode select - Interactive xcode-select, finds all local Xcode's and asks which you want to use from now on

options

Two options useful for all commands:

--no_pretty 
    Disables output JSON prettification
--no_filter 
    Prints full JSON payload for objects instead of just filtering the important ones

You can also use environment variables to specify your preferred server host and credentials with XCSKAREL_HOST, XCSKAREL_USER, and XCSKAREL_PASS. If no host is specified, localhost is used. To always use the server at, e.g. 192.168.1.64, just add this to your ~/.zshrc or ~/.bash_profile:

export XCSKAREL_HOST="192.168.1.64"

:octocat: my Xcode Server projects

πŸ’™ Code of Conduct

Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.

πŸ’ Contributing

Please create an issue with a description of a problem or a pull request with a fix.

✌️ License

MIT

πŸ‘½ Author

Honza Dvorsky - http://honzadvorsky.com, @czechboy0