Article
· Fév 8 2m de lecture

Vos alias de terminal IRIS préférés dans l'environnement de développement Docker !

Bonjour les développeurs !

Récemment, j'ai été impressionné par l'article  de @Dan Pasco  dans lequel il explique également comment il utilise les alias de terminal. 

Les alias de terminal sont un outil très puissant pour les développeurs et les administrateurs système si vous avez souvent besoin d'appeler des expressions de terminal encombrantes et de les rendre plus courtes et plus propres. Voici le lien pour la documentation
de l'alias de terminal .
 

Mais qu'en est-il des environnements Docker ? Que faire si vous êtes fan des environnements de développement Docker mais que vous souhaitez continuer à utiliser vos alias préférés avec Docker ?

Il s'avère que c'est tout à fait possible.

Il suffit d'ajouter le fichier .iris_init (exemple) dans votre dépôt GitHub et de le copier dans le dossier personnel de l'utilisateur IRIS - /home/irisowner dans ce cas. Ce qui peut être fait avec cette commande dans le Dockerfile:

COPY .iris_init /home/irisowner/.iris_init

J'ai ajouté quelques modèles de base en objectscript et iris-dev (principalement empruntés au projet isc-one-liners):

:alias enablebi do EnableDeepSee^%SYS.cspServer("/csp/"_$zcvt($namespace,"L")) ;
:alias ssl x "n $namespace set $namespace=""%SYS"", name=$S(""$1""="""":""DefaultSSL"",1:""$1"") do:'##class(Security.SSLConfigs).Exists(name) ##class(Security.SSLConfigs).Create(name)" ;
:alias createdb do $SYSTEM.SQL.Execute("CREATE DATABASE $1") ;
:alias installipm s r=##class(%Net.HttpRequest).%New(),r.Server="pm.community.intersystems.com",r.SSLConfiguration="ISC.FeatureTracker.SSL.Config" d r.Get("/packages/zpm/latest/installer"),$system.OBJ.LoadStream(r.HttpResponse.Data,"c") ;
:alias add%all x "n $namespace set $namespace=""%SYS"",P(""Globals"")=""%DEFAULTDB"",sc=##class(Config.Namespaces).Create(""%All"",.P)" ;
:alias exportglobal d $System.OBJ.Export("$1.GBL","$2$1.xml") ;

Voici comment vous pouvez les utiliser, par exemple pour l'exportation de globale :

USER>:exportglobal AAA /home/irisowner/
d $System.OBJ.Export("AAA.GBL","/home/irisowner/AAA.xml") ;

Exporting to XML started on 01/25/2024 11:58:37
Exporting global: ^AAA
Export finished successfully.

USER>

Ou ajouter une configuration ssl avec un nom spécifique :

USER>:ssl web
x "n $namespace set $namespace=""%SYS"", name=$S(""web""="""":""DefaultSSL"",1:""web"") do:'##class(Security.SSLConfigs).Exists(name) ##class(Security.SSLConfigs).Create(name)" ;

USER>

J'espère que vous le trouverez aussi utile que moi ! :)

N'hésitez pas à nous faire part de vos alias préférés - nous les ajouterons également au modèle de base.

Discussion (0)1
Connectez-vous ou inscrivez-vous pour continuer