Skip to content

Cloud projects with devops, deployment and build all done in code. In F#.

Notifications You must be signed in to change notification settings

marklam/EverythingAsCodeFSharp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Everything As Code

(In F#)

This project implements some cloud services, with two main objectives and one main non-objective

Objectives

  1. To show how much can be done with code instead of having to use Web UIs or shell prompts. Automation is better than manual steps because there's less to remember and less to get wrong.
  2. To show how to do all these things can be done in F#, and hopefully how simple the code is.

Non-objectives

  1. The cloud function is pretty pointless.

Documentation

The numbered markdown files contain a description of 'the journey' in adding functionality to the project. I suspect they're written in a distracting mixture of 'voices', and that the earlier ones have the most detail. I should probably go over them all and make them a bit less uneven.

What constitutes 'Everything'?

Currently:

  • Deployment - Pulumi
  • Creating a Github Repo from Pulumi
  • Azure functions in .net 5
  • Paket package manager
  • Deploying to Azure from Pulumi
  • Unit tests
  • Integration tests
  • Property-based testing with FsCheckHedgehog
  • Build scripts in Fake
  • Aws Lambdas in .net 5
  • Infrastucture and Deployment to AWS from Pulumi
  • Typed processing on json-format logs
  • Generating Javascript from F# with Fable
  • Javascript Azure Function
  • Javascript Aws Lambda
  • Github workflows for automated builds

Progress

I currently have a TODO list of remaining topics to cover, but it's all dependent on how much free time I have and what other shiny things might come along and distract me.

About

Cloud projects with devops, deployment and build all done in code. In F#.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages