Code Monkey home page Code Monkey logo

codedevops's People

Contributors

damiansuess avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

codedevops's Issues

[DevOps] Create templates to sync your workspace base files with DevOps standards

As a user, I would like to be able to make a base dev environment (i.e. C# for Xamarin) for Visual Studio. In order to do so, we need templates to work from

Base Environment

  • Folder structure (/docs, /source, /output)
  • Editor files (GitIgnore, readme.md, EditorConfig, CodeMaid, LicenseHeader, SpellChecker, StyleCop, MSBuild)

Requires

  • #12 - Create workspace project
  • #10 - Create workspace testbench

Out of Scope

  • Saving to local cache (.\BuildTools\cache\)
  • Syncing up with the latest version
  • Requesting which type of environment you're building (C#, PHP, C++, Arduino, etc.)

Create an installer and updater for the scripts

As a user, I want to be able to install/update the DevOps script helpers via a simple command.

Example:

Sample Code

Below is a sample from dotnet-script

User types:

(new-object Net.WebClient).DownloadString("https://raw.githubusercontent.com/filipw/dotnet-script/master/install/install.ps1") | iex

Script executed:

[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12

# Create a temporary folder to download to.
$tempFolder = Join-Path $env:TEMP "dotnet-script"
New-Item $tempFolder -ItemType Directory -Force

# Get the latest release
$latestRelease = Invoke-WebRequest "https://api.github.com/repos/filipw/dotnet-script/releases/latest" |
ConvertFrom-Json |
Select-Object tag_name
$tag_name =  $latestRelease.tag_name

# Download the zip
Write-Host "Downloading latest version ($tag_name)"
$client = New-Object "System.Net.WebClient"
$url = "https://github.com/filipw/dotnet-script/releases/download/$tag_name/dotnet-script.$tag_name.zip"
$zipFile = Join-Path $tempFolder "dotnet-script.zip"
$client.DownloadFile($url,$zipFile)

$installationFolder = Join-Path $env:ProgramData "dotnet-script"
Microsoft.PowerShell.Archive\Expand-Archive $zipFile -DestinationPath $installationFolder -Force
Remove-Item $tempFolder -Recurse -Force

$path = [System.Environment]::GetEnvironmentVariable("path", [System.EnvironmentVariableTarget]::User);
# Get all paths except paths to old dotnet.script installations. 
$paths = $path.Split(";") -inotlike "*dotnet.script*" 
# Add the installation folder to the path
$paths += Join-Path $installationFolder "dotnet-script"
# Create the new path string
$path = $paths -join ";"

[System.Environment]::SetEnvironmentVariable("path", $path, [System.EnvironmentVariableTarget]::User)

Write-Host "Successfully installed version ($tag_name)"

[DevOps] Create project workspace for Xamarin test bench

As a user, I would like for Xeno.DevOps to be able to create a basic workspace for my Xamarin test bench projects. This would include the bare minimum project files needed - unlike a sanctioned project which required full documentation and different folder structure.

Tasks

  • Ask for project title and type
  • Create sample files
  • Create subfolder with files
  • Initialize and auto-add files

Acceptance Criteria

The following files and folder structure should be created

  • readme.md
  • .gitignore
  • .editorconfig
  • CodeMaid (optional)
  • license (optional)

Out of Scope

  • Create template project

GitSync - Improve sync times by doing background syncing with default branch

As a user, I want to have quicker branch syncing.

Today, GitSync performs a checkout of the default (develop) branch, pulls, and then proceeds to re-checkout our active branch and merge in the default branch. This process can be quickly streamlined by performing a background sync w/ the default branch without switching back and forth.

GitSync should allow merging with user provided branches

As a user, I would like the ability to sync again any branch of my choosing and not just the develop branch.

Current Manual Method

[feature-MyBranch]> git checkout feature-branch2
[feature-branch2]> git pull
[feature-branch2]> git checkout feature-MyBranch
[feature-MyBranch]> git merge feature-branch2

Proposed Solution

[feature/MyBranch]> GitSync -syncBranch "feature/TeammateBranch"
Sync complete!

GitCheckout logging

As a user, I would like to have more verbose logging around the GitCommand feature with color highlighting.

Include when the checkout has been completed, or when a branch could not be found.

[DevOps] Create project workspace for C# projects

As a user, I would like for Xeno.DevOps to be able to create a project workspace for my C# applications. This would include the required project filters needed for sanctioned projects which required full documentation and a proper folder structure.

Acceptance Criteria

  • Same base files as #10 test bench projects
  • docs folder for documentation
  • source for solutions and projects
  • output folder for building projects
  • Scripts for build machine (MSBuild, etc.)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.