Albacore / albacore

Albacore is a professional quality suite of Rake tasks for building .NET or Mono based systems.
www.albacorebuild.net
221 stars 64 forks source link

Support paket pack #174

Open haf opened 9 years ago

haf commented 9 years ago

To replace nuget pack.

Work begun: https://github.com/Albacore/albacore/tree/feature/paket-pack

wallymathieu commented 9 years ago

Where the script assumes that paket.bootstrapper.exe is in .paket folder in the same directory as rakefile?

haf commented 9 years ago

Currently assumes it's in tools/paket.bootstrapper.exe - dotfiles and -folders are annoying during cross-platform dev, because they aren't shown with the default ls commands. I linked to the cli that can bootstrap an albacore project in a couple of seconds above.

wallymathieu commented 9 years ago

If you interact with paket using rake then it doesn't need to be annoying. Also, it could be good to follow how the paket documentation tells you how to set it up.

haf commented 9 years ago

Yes, the CLI doesn't download the full paket, for example, and taken together with your flag it could work really nicely.

wallymathieu commented 9 years ago

I've added a gem: paket bootstrapper based on: nuget gem that initially only contains the bootstrapper in order to simplify things for me.

haf commented 9 years ago

That's a good way of doing it. Should you add the binary as well, to the gem?

wallymathieu commented 9 years ago

The only binary I've added to the gem is the bootstrapper, since I imagine the use case being to run paket.bootstrapper and then paket in your scripts.

For nuget exe I've used:

spec = Gem::Specification.find_by_name("nuget")
command = File.join(spec.gem_dir, "bin", "nuget.exe")

in order to get the location of the binary (but since nuget-gem is updated to work on both windows and *nix you could just use sh "nuget ..." or similar)

wallymathieu commented 9 years ago

I've fixed so that the paket.exe is downloaded if it's missing: https://github.com/wallymathieu/paketbootstrapper-gem/blob/master/_template/bin/paket#L5