Chauffeur.CreatedPackages 1.0.6

dotnet add package Chauffeur.CreatedPackages --version 1.0.6                
NuGet\Install-Package Chauffeur.CreatedPackages -Version 1.0.6                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Chauffeur.CreatedPackages" Version="1.0.6" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Chauffeur.CreatedPackages --version 1.0.6                
#r "nuget: Chauffeur.CreatedPackages, 1.0.6"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Chauffeur.CreatedPackages as a Cake Addin
#addin nuget:?package=Chauffeur.CreatedPackages&version=1.0.6

// Install Chauffeur.CreatedPackages as a Cake Tool
#tool nuget:?package=Chauffeur.CreatedPackages&version=1.0.6                

Chauffeur.CreatedPackages - GitHub license

This package is an add-on to the chauffeur runner. It provides four new deliverables for umbraco 7.14

  1. Package List (package-list, pl) Provides a list of all created packages, shows the umbraco created package ID, its unique identifier and the title

  2. Package Create (package-create, pc) Creates a package for the given umbraco created package ID (retrieved using package-list) This triggers the umbraco package publish command and creates an umbraco package zip in the media directory.

  3. Package Set Version (package-set-version, pkg-set-ver, pkg-ver, pv) Sets the version attribute of all created packages in the packages.config.

  4. Package Install (package-install, pkg-ins, pi) Installs the named .zip or .umb file in the App_Data directory. - Unlike the default Chauffeur package installer, this one is a clone of the umbraco codebase, updated to work outside of a web environment. So it should be able to import all elements - (basically I wrote this because I needed "package actions" and couldn't understand the way Chauffeur handles packages.)

Purpose

The purpose of these deliverables are to allow a CI pipeline to create an umbraco package. I looked through all the solutions on how to build a package using npm, powershell and generally picking apart and working around the umbraco framework.

After discovering chauffeur and its main purpose being to handle CI/CD for project deployment I dug in a little further and found that it worked great for deploying umbraco (and started using it for deploying sites), but didnt cover the use case of deploying and version controlling created packages.

We wanted a way to use umbraco to create a package, but then use a build system to package and deploy a change.

Using created packages

This is just one example of how to use the tool Spin up a new copy of umbraco (check out yo umbraco-cms for a tool that uses chauffeur to get you up and running fast). Then develop your package (doc types, macros, etc). Use the umbraco package manager to save your package, choose all the files and database settings you want to store, then check that the package appears in chauffeur.

Chauffeur.Runner.exe package-list
1) testpackage [25ed2aac-c059-410d-8a2e-7f740776daa3]

When you are finished, use chauffeur to scaffold the site. Choose all the default options

Chauffeur.Runner.exe scaffold
Time to setup Chauffeur!
What do you want the name to be (001-Setup)?
Include an install step (Y/n)?
Do you want to package your current instance (Y/n)?
Chauffeur is all setup and ready to go. To run your first delivery just run:
./Chauffeur.Runner.exe delivery -p:adminpwd=MySuperSecretPassword! -p:packageVersion=1.2.3.4

Edit the generated App_Data\Chauffeur\setup-001.delivery, and add

package-set version X as a new line (where X is the version number you want to create) package-create N as a new line (where N is the package to create)

install y
user change-password admin $adminpwd$
package 001-Setup
package-set-version $packageVersion$
package-create 1

Check your umbraco site into source control. Dont add the .sdf file, make sure the created_packages directory and the chauffeur directory are checked in

\App_Data\packages\created\createdpackages.config
\App_Data\Chauffeur

If you've used a generated .gitignore file, it usually ignores the App_Data directory, so check these files are in version control.

Now you can use your favourite build tool to download umbraco, nuget restore the packages (including the chauffeur.createdpackages package), build umbraco and then run

Chauffeur.Runner.exe delivery -p:adminpwd=MySuperSecretPassword! -p:packageVersion=1.2.3.4

This will make chauffeur install umbraco to a .sdf file, restore your site (because you scaffolded it) and then create the package you requested. You'll need to write something to pass your version number into the package version (you should probably change the adminpwd whilst you are at it) but once done you'll have a versioned package you can deploy.

https://twitter.com/stuartcrouch

Product Compatible and additional computed target framework versions.
.NET Framework net462 is compatible.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.0.6 675 6/16/2019
1.0.5 586 6/3/2019
1.0.4 605 6/3/2019
1.0.3 627 6/1/2019
1.0.0 586 5/29/2019