itb2016 - forgebox 2 package management

24
2.0.0 Luis Majano www.ortussolutions.com

Upload: ortus-solutions-corp

Post on 14-Apr-2017

145 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: ITB2016 - ForgeBox 2 Package Management

2.0.0

Luis Majano www.ortussolutions.com

Page 2: ITB2016 - ForgeBox 2 Package Management

WHO AM I?

• Luis Majano

• Computer Engineer

• Imported from El Salvador

• CEO of Ortus Solutions

• Adobe Community Professional

• Sandals & Beaches -> ESRI -> Ortus

Page 3: ITB2016 - ForgeBox 2 Package Management

What is ForgeBox?What’s New?

Creating PackagesMaintaining Packages

Page 4: ITB2016 - ForgeBox 2 Package Management

ForgeBox 1 released in 2010NPM 1 (2011)Box Centric

Code DirectoryCentralized Packages

Page 5: ITB2016 - ForgeBox 2 Package Management

What is ForgeBox now!

• www.forgebox.io

• ColdFusion (CFML) Code Directory

• Does not host packages (yet)

• Foster Community

• Works in Unison with CommandBox

• Package Management

• But one simple goal….

Page 6: ITB2016 - ForgeBox 2 Package Management

Take ColdFusion (CFML) Back to The Future

Page 7: ITB2016 - ForgeBox 2 Package Management

ForgeBox 2.0

New Responsive UIRSS Feeds

Improved Search & SecurityMulti-Version Support

CLI Registration + PublishingUI Registration + Publishing

Package NotificationsThis is just the start….

Page 8: ITB2016 - ForgeBox 2 Package Management
Page 9: ITB2016 - ForgeBox 2 Package Management

How we should work!

App#Package#Manager#

CLI#

REPL#

Automa6on#

OS#

Page 10: ITB2016 - ForgeBox 2 Package Management

Package Manager, REPL, CLI + More

Page 11: ITB2016 - ForgeBox 2 Package Management

What’s a package?

• A folder or zip/tar file that must contain:• box.json

• It must be in the root!

init name="My Package" version="1.0.0"

Page 12: ITB2016 - ForgeBox 2 Package Management
Page 13: ITB2016 - ForgeBox 2 Package Management

Package Commands• bugs

• clear

• documentation

• homepage

• init

• install

• list

• outdated

• set

• show

• uninstall

• update

• version

init —wizard

Page 14: ITB2016 - ForgeBox 2 Package Management

box.json

• Package Descriptor• Declares package metadata

• Name• Slug• Version• Author• Dependencies• DevDependencies• Installation Details

• Custom Metadata

Page 15: ITB2016 - ForgeBox 2 Package Management

box.json

?

Page 16: ITB2016 - ForgeBox 2 Package Management

location

• ForgeBox 2.0 Requires it• ForgeBox 2.0 Only uses your box.json now.• Where is your package• Code Endpoints

• HTTP/S• Git• Another ForgeBox slug

Page 17: ITB2016 - ForgeBox 2 Package Management

Dynamic Location

• CommandBox Interceptors - Lifecycle events• Execute on pre+post publishing/versions/etc• `` Denotes a dynamic evaluation• Use Package Commands, etc

{ "scripts" : { "postVersion" : "package set location='gitUser/gitRepo#`package version`'" "postPublish" : "!git push", "onServerStart" : "echo 'Hi, thanks for starting `server show name` on port `server show web.http.port` in directory `pwd`'" }}

Page 18: ITB2016 - ForgeBox 2 Package Management

CommandBox Book

commandbox.ortusbooks.com

Page 19: ITB2016 - ForgeBox 2 Package Management

ForgeBox Registration

• Ask you a few questions• Ready to start publishing• Registers an API Key for you

forgebox register

Page 20: ITB2016 - ForgeBox 2 Package Management

ForgeBox Login

• Ask for username/password• Store your API Key• ~user./CommandBox

forgebox login

Page 21: ITB2016 - ForgeBox 2 Package Management

ForgeBox Publish

• Publishes your packages• Reads your box.json• Can read readme files, changelogs, instructions

forgebox publish

Page 22: ITB2016 - ForgeBox 2 Package Management

Bump Command

• Bump major, minor or patch placeholder• If using a git repo, it will tag and commit for you

bump --patch message="Finalized awesome features."

Page 23: ITB2016 - ForgeBox 2 Package Management

ForgeBox PrivateOrganization Support

S3 StorageWeb hooks

Package FavoritesAnalytics

Security AnalysisMaven Support

Package + User NotificationsForgeBox Pro

Page 24: ITB2016 - ForgeBox 2 Package Management

Gracias!

Q & A