2009-09-20 8 views
0

Je viens d'hériter d'une application CF d'un client qui utilise un fournisseur d'hébergement CF partagé. J'aimerais introduire de meilleurs processus, y compris la possibilité de mettre en place les modifications d'applications que je fais pour leur examen. (Dans le passé, ils téléchargeaient les modifications et se croisaient les doigts.)Comment organiser le déploiement d'une application sur le même serveur que la production?

Leur application réside dans un dossier sous la racine Web. Appelons-le "/ app". Je voudrais créer un répertoire frère nommé "/ appstaging" où je publierais le dernier code. L'obstacle est que le fournisseur d'hébergement vous permet de définir des chemins pour les balises et les mappages personnalisés, mais pas par application CF. Les paramètres existants pointent tous dans le répertoire/app, donc si je dois apporter des modifications aux tags, CFC, etc., je ne peux pas les tester sans affecter l'application en direct. Ce que je veux, c'est que CF me laisse définir des chemins et des mappages par tag d'application. D'après ce que j'ai lu, CF8 me permet de le faire mais le client utilise CF7 (je les pousse à mettre à jour dès que possible). En attendant, y a-t-il un moyen de contourner ce problème ou faut-il attendre une transition harmonieuse?

(J'expérimente actuellement des méthodes pour détecter quelle application je suis basée sur l'utilisation de GetCurrentTemplatePath() dans application.cfm L'idée est que tout code faisant référence à d'autres fichiers utilisant des mappages utiliserait un mappage différent. t fait assez de travail là pour savoir si tout cela va fonctionner.)

Toutes les idées ou les commentaires sont les bienvenus. Je devrais souligner que l'application et ses dev env n'est pas très "moderne". Il n'y a pas de frameworks impliqués et pas de choses comme ant pour la construction/le déploiement. Le budget du client est extrêmement limité, donc je ne cherche pas à convertir l'application en vente complète, mais j'ai besoin de trouver des moyens bon marché d'obtenir un certain processus pour garder les choses saines.

+0

Pensez que c'est couvert par votre question précédente. – Sergii

+0

@Sergii: Je ne pense pas à 100%. Si le code existant utilise des balises personnalisées, comment puis-je indiquer à CF le chemin pour les charger à partir d'un autre chemin que celui que le fournisseur d'hébergement me permet de définir? Ce que vous avez suggéré dans mon autre question est essentiellement le même que mon troisième paragraphe ci-dessus. Je me demande s'il n'y a pas d'autre moyen de résoudre le problème sans répercuter cette modification sur l'ensemble de la base de code (elle est grande). La possibilité de définir des mappages par application me permet de le faire. On dirait que passer à CF8 est la meilleure solution. Je me demande s'il y a une autre façon de séparer proprement les deux applications avant de mettre à jour ... – DaveBurns

Répondre

1

Je suppose que vous devrez faire quelque chose comme la définition des chemins de balises personnalisées dans un fichier de configuration chargé dans la portée de l'application. Mais cela nécessitera un réaménagement sérieux du code.

+0

Bien que le deuxième compte hébergé mentionné ailleurs soit une bonne idée, je suis allé avec quelque chose comme ceci principalement parce que la mise à niveau vers CF8 arrivera bientôt et donc le client ne veut pas se soucier de la logistique d'un deuxième compte.Mais aussi parce que le fait de charger des CFC avec des chemins explicites (l'application est antérieure aux CFC) et d'autres ajustements que j'ai faits en cours de route (fichiers de configuration, etc.), je peux avoir un répertoire de mise en scène côte à côte avec l'application en direct. Il y a toujours un chevauchement avec le répertoire des balises personnalisées, mais je minimise l'utilisation de celles-ci dans l'application, de sorte que c'est rarement un problème. – DaveBurns

6

Ceci est une suggestion sérieuse, mais farfelue: utilisez un deuxième compte hébergé.

Rédigez une analyse coûts-avantages des serveurs Live et de transfert, et comparez-la au coût d'un deuxième compte hébergé. Le deuxième compte n'a pas besoin d'allocations de données massives, etc, et ne devrait pas coûter autant que le compte en direct. De plus, calculez le coût de révision de la base de code pour permettre la diffusion en direct et la mise en scène sur un compte et comparez-le au coût d'un second compte d'hébergement. Rappelez-vous que vous n'aurez pas besoin du deuxième compte une fois que votre véritable mise à jour sera terminée.

+0

Seconding this. Il ne devrait pas coûter très cher et à toutes fins utiles fournit un serveur de transfert indépendant. –

+0

D'accord. Pourquoi perdre du temps à programmer quand tout est résolu avec un deuxième compte d'hébergement? Même si le client est sur un budget serré, un deuxième compte d'hébergement bon marché devrait être moins cher que de développer un travail autour. – Eddie

Questions connexes