{"id":22343829,"url":"https://github.com/dcook-net/dotnet-automatize","last_synced_at":"2025-07-30T03:30:38.183Z","repository":{"id":48398731,"uuid":"148816806","full_name":"dcook-net/Dotnet-Automatize","owner":"dcook-net","description":"AutoUpgrade is a .Net Global tool that will automatically update your Project Files, DockerFiles, docker-compose, and .env files with the changes required for migrating to new versions of .Net","archived":false,"fork":false,"pushed_at":"2021-07-28T05:18:22.000Z","size":150,"stargazers_count":15,"open_issues_count":10,"forks_count":3,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-07-27T17:24:21.527Z","etag":null,"topics":["automation","dotnet-core","dotnetcore"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dcook-net.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-09-14T16:46:45.000Z","updated_at":"2021-12-21T17:19:34.000Z","dependencies_parsed_at":"2022-08-24T07:51:13.404Z","dependency_job_id":null,"html_url":"https://github.com/dcook-net/Dotnet-Automatize","commit_stats":null,"previous_names":["cookie1981/dotnet-autoupgrade"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/dcook-net/Dotnet-Automatize","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dcook-net%2FDotnet-Automatize","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dcook-net%2FDotnet-Automatize/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dcook-net%2FDotnet-Automatize/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dcook-net%2FDotnet-Automatize/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dcook-net","download_url":"https://codeload.github.com/dcook-net/Dotnet-Automatize/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dcook-net%2FDotnet-Automatize/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267803962,"owners_count":24146526,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-30T02:00:09.044Z","response_time":70,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automation","dotnet-core","dotnetcore"],"created_at":"2024-12-04T09:06:21.578Z","updated_at":"2025-07-30T03:30:37.897Z","avatar_url":"https://github.com/dcook-net.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Build Status](https://dev.azure.com/davidcook0284/davidcook/_apis/build/status/cookie1981.Dotnet-Automatize)](https://dev.azure.com/davidcook0284/davidcook/_build/latest?definitionId=1)\n[![nuget](https://img.shields.io/nuget/v/Automatize.svg)](https://www.nuget.org/packages/Automatize/)\n\n# Dotnet-Automatize\n\nAutomatize is a .Net Global tool for automatically updating your .Net Core projects and solutions to the latest version of the the .Net Core Framework, in line with the migrations\ndocs: https://docs.microsoft.com/en-us/aspnet/core/migration/20_21?view=aspnetcore-2.1.\n\nIt's a .Net global tool, so it works on Mac and Windows.\n\n\n## What does \n\nAutomatize is a fairly blunt instrument.\nIt will update all of your Project File(s), DockerFile(s) and .env file(s) within the target folder with the changes required for migrating to the specified version of .Net Core.\nIt currently supports upgrades from  2.0 -\u003e 2.1, and 2.1 -\u003e 2.2. \nIf the target folder contains many projects/solutions, then they will all be updated. So, if all your development projects live under one root folder, it is possible to update them all with a single instruction.\n\nIf your project uses any MicroMachines.Common packages, then these will be upgraded to the minimum required version to support the update, if they are lower than the minimum version. \n\nAutomatize will always update to the latest patch version. So if the latest version of 2.1 is 2.1.6, you'll get 2.1.6. Any previous patch versions will be skipped and are effectively ignored.\n\n\n## What it doesn't do\n\nIt will not resolve namespace conflicts caused as a result of the update.\nIt will not apply new code features, such as applying [ApiController] attribute for example.\nIt does not currently build or test your solutions after update.\n\n\n## Pre-reqs:\nYou'll need .Net Core 2.1 SDK installed locally. Download at www.dot.net\n\n\n## To Install:\n\n```\ndotnet tool install automatize -g --version 2.0.1\n```\n\n## Usage:\n\nAs this is a global tool, you can run it from anywhere, supplying the full path the folder containing the solution you wish to upgrade:\n\n```\nautomatize upgrade [PathToDirectory]\n```\n\nAlternatively, if you navigate to the desired folder, you can omit the Path and it will default to your current location.\n\n## Params\n\nPathToDirectory - Fully qualified Path to the directory you wish to upgrade. Defaults to current location.\n\n--useLinux - By Default the Base image to use in your DockerFile is assumed to be Alpine. If you would rather use a Linux base image include the --useLinux switch, or -l. Windows is not currently supported.\n\n--package - Flag to indicate if the project being updated is a Library project or not. Defaults to False.\n\n--minorversion - The minor version of .Net Core 2 to upgrade to. Defaults to 2 (ie, 2.2) (Currently no validation on this, so anything other than 1 or 2 is likely to throw an exception.)\n\n\nExamples:\n```\nautomatize upgrade [PathToDirectory] --useLinux --package\n```\nThe above command will upgrade a library project, targeting linux base docker images (as opposed to Alpine) \n \n\n## Upgrading your version:\n\nTo update to the latest version: \n\n```\ndotnet tool update automatize -g\n```\n\n## Coming updates:\n\nThe plan is to keep updating for each new version of .Net Core, (possibly even with preview releases).\nI'd like to apply updates incrementally, so upgrading from 2.0 to 2.2 will apply updates for 2.1, then 2.2, all with a single command.\n\nI'd also like to extend the behaviour to automatically build \u0026 test your upgraded application, and commit to git supplying an optional Jira ticket number to support smart commits.\n\nPR's welcome :)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdcook-net%2Fdotnet-automatize","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdcook-net%2Fdotnet-automatize","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdcook-net%2Fdotnet-automatize/lists"}