.NET Core - Check .NET Core Framework Version (Bash)

Octopus.Script exported 2018-03-30 by cjuroz belongs to ‘Bash’ category.

Check if given .NET Core framework version (or greater) is installed.

Parameters

When steps based on the template are included in a project’s deployment process, the parameters below can be set.

Target .NET Core framework version

TargetVersion = 2.0.5

The target .NET Core framework version you expect to be installed in the machine. For example, 2.0.5.

Exact

Exact = False

If you check “Exact”, it means the installed .NET Core framework version MUST match target version.

Otherwise, as long as the installed .NET Coreframework version is greater than or equal to target version, the check will pass.

Script body

Steps based on this template will execute the following Bash script.

targetVersion=$(get_octopusvariable "TargetVersion")
exact=$(get_octopusvariable "Exact")

# required arguments checking
if [[ ! $targetVersion ]] || [[ ! $exact ]] 
then
    echo "[ERROR]: Missing required argument. Exit!"
    exit 1;
fi

dotNetCorePath=/usr/share/dotnet/shared/Microsoft.NETCore.App
dotNetCoreVersions=()
if [ -d "$dotNetCorePath" ]; then
	cd $dotNetCorePath
    dotNetCoreVersions=(*/)
fi

matchedVersions=()
for i in ${dotNetCoreVersions[@]}; do
	if [ $exact = true ] || [ $exact = True ]
    then
    	if [[ $i = $targetVersion/ ]]
        then
        	matchedVersions+=(${i%/})
        fi
    else
    	if [[ ! $i < $targetVersion/ ]]
        then
        	matchedVersions+=(${i%/})
        fi
    fi
done

if [ ${#matchedVersions[@]} -eq 0 ]; then
    echo "Can't find .NET Core Runtime $targetVersion installed in the machine."
    exit 1
else
    for i in ${matchedVersions[@]}; do
    	echo "Found .NET Core Runtime $i installed in the machine."
	done
fi

Provided under the Apache License version 2.0.

Report an issue

To use this template in Octopus Deploy, copy the JSON below and paste it into the Library → Step templates → Import dialog.

{
  "Id": "ac73fb02-8107-4747-bedf-7e39effa31d4",
  "Name": ".NET Core - Check .NET Core Framework Version (Bash)",
  "Description": "Check if given .NET Core framework version (or greater) is installed.",
  "Version": 43,
  "ExportedAt": "2018-03-30T10:07:36.152Z",
  "ActionType": "Octopus.Script",
  "Author": "cjuroz",
  "Parameters": [
    {
      "Id": "694207ec-0e0b-42a1-841b-81aa4ee5cb7d",
      "Name": "TargetVersion",
      "Label": "Target .NET Core framework version",
      "HelpText": "The target .NET Core framework version you expect to be installed in the machine. For example, 2.0.5.",
      "DefaultValue": "2.0.5",
      "DisplaySettings": {
        "Octopus.ControlType": "SingleLineText"
      },
      "Links": {}
    },
    {
      "Id": "b570ac4a-44a8-42ef-90c4-822530ff6d52",
      "Name": "Exact",
      "Label": "Exact",
      "HelpText": "If you check \"Exact\", it means the installed .NET Core framework version MUST match target version.\n\nOtherwise, as long as the installed .NET Coreframework version is greater than or equal to target version, the check will pass.",
      "DefaultValue": "False",
      "DisplaySettings": {
        "Octopus.ControlType": "Checkbox"
      },
      "Links": {}
    }
  ],
  "Properties": {
    "Octopus.Action.Script.ScriptSource": "Inline",
    "Octopus.Action.Script.Syntax": "Bash",
    "Octopus.Action.Script.ScriptBody": "targetVersion=$(get_octopusvariable \"TargetVersion\")\nexact=$(get_octopusvariable \"Exact\")\n\n# required arguments checking\nif [[ ! $targetVersion ]] || [[ ! $exact ]] \nthen\n    echo \"[ERROR]: Missing required argument. Exit!\"\n    exit 1;\nfi\n\ndotNetCorePath=/usr/share/dotnet/shared/Microsoft.NETCore.App\ndotNetCoreVersions=()\nif [ -d \"$dotNetCorePath\" ]; then\n\tcd $dotNetCorePath\n    dotNetCoreVersions=(*/)\nfi\n\nmatchedVersions=()\nfor i in ${dotNetCoreVersions[@]}; do\n\tif [ $exact = true ] || [ $exact = True ]\n    then\n    \tif [[ $i = $targetVersion/ ]]\n        then\n        \tmatchedVersions+=(${i%/})\n        fi\n    else\n    \tif [[ ! $i < $targetVersion/ ]]\n        then\n        \tmatchedVersions+=(${i%/})\n        fi\n    fi\ndone\n\nif [ ${#matchedVersions[@]} -eq 0 ]; then\n    echo \"Can't find .NET Core Runtime $targetVersion installed in the machine.\"\n    exit 1\nelse\n    for i in ${matchedVersions[@]}; do\n    \techo \"Found .NET Core Runtime $i installed in the machine.\"\n\tdone\nfi"
  },
  "Category": "Bash",
  "HistoryUrl": "https://github.com/OctopusDeploy/Library/commits/master/step-templates//opt/buildagent/work/75443764cd38076d/step-templates/bash-check-net-core-framework-version.json",
  "Website": "/step-templates/ac73fb02-8107-4747-bedf-7e39effa31d4",
  "Logo": "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",
  "$Meta": {
    "Type": "ActionTemplate"
  }
}

History

Page updated on Friday, March 30, 2018