MicroElements.DevOps
1.1.0
Prefix Reserved
See the version list below for details.
dotnet add package MicroElements.DevOps --version 1.1.0
NuGet\Install-Package MicroElements.DevOps -Version 1.1.0
<PackageReference Include="MicroElements.DevOps" Version="1.1.0" />
paket add MicroElements.DevOps --version 1.1.0
#r "nuget: MicroElements.DevOps, 1.1.0"
// Install MicroElements.DevOps as a Cake Addin #addin nuget:?package=MicroElements.DevOps&version=1.1.0 // Install MicroElements.DevOps as a Cake Tool #tool nuget:?package=MicroElements.DevOps&version=1.1.0
# MicroElements.DevOps
DevOps scripts for CI and CD
## Main features
- Based on CakeBuild
- Supported OS: Windows, Linux
- Supported CI: Travis, AppVeyor, Jenkins, any other
- C# project generation or initialization with CI and CD included
- Only two files: build.ps1 and build.sh. All other files can be generated
- No need to maintain your own build scripts
- You can customize and add own tasks if you need
## Getting started
### 1. Download bootstrap script
Open a new PowerShell window and run the following command.
```ps
Invoke-WebRequest https://raw.githubusercontent.com/micro-elements/MicroElements.DevOps/master/resources/build.ps1 -OutFile build.ps1
```
### 2. Initialize component
Run target `Init`
```ps
./build.ps1 -Target "Init"
```
### 3. Usage
#### Local build
Run target `Default`
```ps
./build.ps1 -Target "Default"
```
#### Travis CI
Add file .travis.yml to project
```yml
language: csharp
mono: none
dotnet: 2.1.300
os:
- linux
before_script:
- chmod a+x ./build.sh
script:
- ./build.sh --target=Travis --verbosity=normal
```
#### Other CI
Run shell script: `./build.sh --target=Travis`
Learn more about Target Frameworks and .NET Standard.
This package has no dependencies.
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.11.0 | 3,214 | 5/31/2020 |
1.10.0 | 2,222 | 5/31/2020 |
1.9.1 | 2,978 | 6/3/2019 |
1.9.0 | 2,690 | 4/23/2019 |
1.8.0 | 2,552 | 1/21/2019 |
1.7.3 | 2,623 | 12/23/2018 |
1.7.2 | 2,570 | 12/22/2018 |
1.7.1 | 2,567 | 12/22/2018 |
1.7.0 | 2,651 | 9/17/2018 |
1.6.0 | 2,896 | 8/12/2018 |
1.5.0 | 2,756 | 8/7/2018 |
1.4.1 | 2,863 | 8/3/2018 |
1.4.0 | 2,743 | 8/2/2018 |
1.3.0 | 3,054 | 7/23/2018 |
1.2.0 | 2,618 | 7/21/2018 |
1.1.0 | 2,893 | 7/17/2018 |
1.0.0 | 2,771 | 7/14/2018 |
1.0.0-beta.2 | 728 | 7/10/2018 |
1.0.0-beta.1 | 616 | 7/9/2018 |
0.5.0 | 2,933 | 6/18/2018 |
0.5.0-rc.3 | 622 | 6/18/2018 |
0.5.0-rc.2 | 626 | 6/14/2018 |
0.5.0-rc.1 | 629 | 6/12/2018 |
0.5.0-beta.6 | 620 | 6/12/2018 |
0.5.0-beta.5 | 632 | 6/12/2018 |
0.5.0-beta.4 | 534 | 6/12/2018 |
0.5.0-beta.3 | 611 | 6/11/2018 |
0.5.0-beta.2 | 658 | 5/27/2018 |
0.5.0-beta.1 | 639 | 5/27/2018 |
0.4.0 | 3,122 | 5/16/2018 |
0.3.0 | 3,129 | 5/12/2018 |
0.2.0 | 2,912 | 5/12/2018 |
0.1.0 | 3,084 | 5/11/2018 |
# 1.1.0
- Added task `UploadTestResultsToAppVeyor` to `AppVeyor` task
- Added task `AddAppVeyorFile`
- New: `AddFileFromTemplate` supports options and can fill template from params
- Changes: `ArtifactsDir` now is in `RootDir` by default
- Changes: `TestResultsDir` is the child of `ArtifactsDir`
- Changes: `PackagesDir` is the child of `ArtifactsDir`
- Bugfix: `DefaultValue` ParamSource is now always at the and of GetValueChain
# 1.0.0
The first major version.
- Includes main tasks: Init, Default, Travis, AppVeyor
- Task `Init` runs: CreateProjectStructure, CheckOrDownloadGitIgnore, GitIgnoreAddCakeRule, CreateProjects, EditorConfig, SourceLink, CreateCommonProjectFile, AddTravisFile, AddCakeBootstrapFiles, AddChangeLog, AddStyleCop
- Task `Default` runs: Build, Test, CopyPackagesToArtifacts
- Task `Travis` runs: DoVersioning, Build, Test, CopyPackagesToArtifacts, UploadPackages
- Task `AppVeyor` runs: Build, Test
- All scripts builded on concepts:
- ScriptArgs contains all script params
- ScriptParam:
- Can be initializes from command line args, environment variables
- Can be initialized from attributes: DefaultValue, ScriptParamAttribute
- Evaluates by conventions
- Can contain list values
- Scripts splitted on several files
- Extended customization
# 1.0.0-beta.2
- VersionParam
- used NugetSource, removed old non list nuget_sourceX params
# 1.0.0-beta.1
## Breaking changes:
- Removed ScriptParamFactory - all factory methods moved to ScriptParam for simplicity
- AutoCreation script params with Initialize methods. Initialize creates script param, initializes param from attributes, sets default getters from arguments and from environment variables.
- Added overriden operator ```/``` that combines ```ScriptParam<DirectoryPath>``` with string and gets combined DirectoryPath
# 0.5.0
- Redesigned ScriptParam and ScriptArgs
- New Targets: AddTravisFile, CopyPackagesToArtifacts, UploadPackages, AddStyleCop
- Added versioning (Manual and for some CI)
- Added generate package on build
- Added build.sh to resources and AddCakeBootstrapFiles target
- Build and Test moved to build.cake
- Added many common util methods
- Scenarios moved from common
- DotNetPack with releaseNotes
# 0.4.0
- Common props created
- Added: fill common props from github
# 0.3.0
- Create version.props
- GetVersionFromCommandLineArgs, ReadTemplate
- Idempotent CreateProjectStructure
- Versioning methods
# 0.2.0
- Vesion that works from nuget pakage
- Init target: CreateProjectStructure, GitIgnore, CreateProjects, EditorConfig, SourceLink
# 0.1.0
- Initial version