How do I get started?
- Create a new project
- Add a variable called MyVariableName and set its value to World
- Add a "Run a script" step
- Type your F# script. F# is white-space sensitive so indentation matters. You can copy and paste a sample script from here.
- Create a new release and deploy it
- Click on Task log and you should see the following output:
We already support Bash, PowerShell and ScriptCS so you might wonder why we need another language. Firstly, because you asked for it and you asked quite a few times. :) Secondly, each of the languages supported by Octopus offers different features:
- Bash operates on text
- PowerShell operates on objects but their type is not known until runtime
- ScriptCS offers static compilation
- F# is compact, has a great type inference and forces you to deal with edge cases explicitly (e.g. lack of value)
From our perspective, more choice is better as it helps you find the right tool for the job.
I would like to learn a bit more
If you always wanted to use F# in your development workflow but couldn't find a low risk way of introducing it then deployment scripts in F# might be what you were looking for.
And last but not least, I wanted to thank Jorge Fioranelli for his help with making our API F# friendly.