Onor.io

Onor.io

For those few of us that work on Elixir on Windows, here’s a little utility powershell script I hacked together to reset my database. I constantly had to reset both dev and test so I set up the script such that I could pass the environment to be reset on the command line. Hope others may find this helpful:

param([string]$environment="test") #default to test environment

if($environment -eq "prod"){
   Throw "You cannot run this script against the prod evironment. You must initialize prod manually"
}

$env:MIX_ENV = $environment
mix ecto.drop
mix ecto.create
mix ecto.migrate
Remove-Item Env:\MIX_ENV #Reset the environment setting.

You would use it like so: ./dbinit dev or ./dbinit test

Showing Posts 1 to 3

OvermindDL1

OvermindDL1

You can also do it all completely within mix by writing a little mix task that sets the mix environment even then you could have an alias set it to dev, reset, then set it to test and reset again if you want for a meta-resetter.

I would personally still just do:

mix ecto.reset
MIX_ENV=test mix ecto.reset

Maybe alias it like:

alias ecto-reset='mix ecto.reset; MIX_ENV=test mix ecto.reset'

Or via the New-Alias command in powershell however it works.

Yes I work on elixir on Windows at work (debian at home) too… >.>
I installed bash though.

Onor.io

Onor.io OP

I’m conflicted in regards to installing bash on Windows. Yes, it’s a lot better shell environment than anything else available on Windows but I’d rather not be working on Windows anyway :slight_smile: Plus I mostly end up working on stuff that others will have to support and it’s hard enough to find Win devs who can even cope with Powershell much less coping with bash on Windows.

OvermindDL1

OvermindDL1

I know how that feels. :wink:

I use both bash and powershell, they each have their perks. For working with windows objects powershell is certainly better by far. However I can pump out little things in bash far faster (something simple like finding all files of a type in a directory tree then matching a regex inside of them to get a list of matchers is definitely longer and more unwieldy to type in powershell than bash by far). Right now I have one powershell window and 4 bash windows. Though for anything that needs to last longer than something ephemeral I generally write it in Elixir. Elixir actually makes for a really easy scripting language for the people here. We have quickly turned into an Elixir shop (one of the reasons they hired me was my almost 10 years of erlang spare-time work). :slight_smile:

— All posts loaded —

Where Next? Top

Trending in Announcing Top

wojtekmach
Hey everyone! Req is an HTTP client for Elixir that I’ve been working on for quite some time. There is already a lot of HTTP clients out...
New
handnot2
Samly can be used to enable SAML 2.0 Single Sign On in a Plug/Phoenix application. This library uses Erlang esaml to provide plug enabl...
New
woylie
Flop is an Elixir library that applies filtering, ordering and pagination parameters to your Ecto queries. offset-based pagination with...
New
MRdotB
I needed to reuse React components from my Chrome extension in my Phoenix/LiveView backend. I noticed that for Svelte/Vue, there are live...
New
garrison
Hobbes is a low-level distributed database for the Elixir programming language. Hobbes provides a simple, safe, and scalable storage lay...
New
marciok
Hi there! We created Gust: A task orchestrator inspired by Airflow. For those who have never heard about Aiflow, it’s a Python-based wor...
New
fuelen
Hi all! I want to present a small library which provides a mix task for generating an Entity-Relationship Diagram for Ecto schemas. You...
New

Other Trending Topics Top

mudasobwa
I am happy to introduce the very α version of the new programming language compiled to BEAM. Welcome Cure. It has literally three kille...
New
AstonJ
This showed up on my feed.. anyone heard of it? Just hype? Ox Alpha is a reasoning model designed for coding, sustained ag...
New
sergio
It’s not that it’s vocabulary is too advanced. It’s something worse. I get lost trying to follow even a paragraph written by Claude. It’...
New
sorenone
Today we’re releasing Oban for Python. Not an Oban client in Python. Not a pythonx wrapper embedded in Elixir. Nope, it’s a fully operati...
New
akoutmos
@hugobarauna, Dr. Dimitrios Koutmos (my brother) and I (Alex Koutmos) have been hard at work on writing a book on how you can use Elixir ...
New
pferriby
Introductory paragraph I’ll be looking for a keen junior or someone that has a couple of years experience in the real world (so you’ve be...
New

We're in Beta

About us Mission Statement

Options

Thread Display Mode




Thread Preview

Skip Thread Previews