Utiliser SBT derrière un proxy d’entreprise
J’essaye depuis quelques temps de faire fonctionner SBT derrière un proxy d’entreprise ( avec authentification) . Vu que je ne veux pas polluer le serveur NEXUS existant, j’ai essayé de tout faire un local …. et là c’est le drame.
Jusqu’à présent, j’utilisais MAVEN et le plugin SCALA pour répondre aux besoins du BUILD. J’ai néanmoins trouvé une autre solution, tout aussi sale…. Installer un serveur NEXUS sur le poste de travail et s’en servir comme proxy « intelligent ».
J’ai fait la configuration suivante :
Je ne vais pas décrire ici l’installation de nexus tellement c’est simple.
Dans la configuration de nexus, le proxy se configure assez simplement dans la partie server
J’ai ajouté les virtual repositories suivants :
- ivy-releases-1:
https://dl.bintray.com/sbt/sbt-plugin-releases/?utm_source=rss&utm_medium=rss
- ivy-releases-2:
https://dl.bintray.com/typesafe/ivy-releases/?utm_source=rss&utm_medium=rss
- mvn-typesafe-release-1:
http://repo.typesafe.com/typesafe/maven-releases/?utm_source=rss&utm_medium=rss
- mvn-typesafe-release-2:
http://repo.typesafe.com/typesafe/releases/?utm_source=rss&utm_medium=rss
et crée deux groupes l’un pour les repo ivy (ivy-releases) et l’autre pour maven (mvn-releases)
Enfin, comme l’indique la documentation, j’ai configuré le fichier ~.sbt/repositories
de la manière suivante :
[repositories] local my-ivy-proxy-releases: http://127.0.0.1:8081/nexus/content/groups/ivy-releases/,?utm_source=rss&utm_medium=rss [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier]).[ext] my-maven-proxy-releases: http://127.0.0.1:8081/nexus/content/groups/mvn-releases/?utm_source=rss&utm_medium=rss
Enfin, lorsque vous exécutez sbt, celui-ci utilisera automatiquement votre proxy NEXUS qui lui est capable de discuter avec un proxy d’entreprise.
En espérant que ça serve à d’autres…