Produits de téléchargement OXID / GIT

Produits de téléchargement OXID / GIT

Proposer des biens numériques en ligne - Amazon le fait avec des livres électroniques, sur Beatport je reçois des offres de musique actuelles et dans l'AppStore de mon smartphone Apple, Google ou Microsoft me proposent de la musique et des téléchargements de logiciels, à tout moment et en tout lieu. Le marché des produits à télécharger est en plein essor, après tout, l'offre est disponible partout et souvent moins chère que dans un magasin, qui n'est souvent accessible qu'en voiture.


Une tendance se dessine et tend fortement vers le "shopping numérique" et le shopping mobile.




Seit OXID eShop version 4.6.0 propose l'option "produits immatériels", il s'agit d'une musique légère, de livres électroniques, de vidéos ou de jeux, en vente numérique dans votre propre boutique. Les logiciels peuvent également être vendus à merveille dans le magasin. Le téléchargement des fichiers de téléchargement payants est effectué soit par l'administration du magasin, soit avec des quantités de données plus importantes avec le programme FTP. Si les fichiers sont transférés par FTP, ils doivent être affectés à l'article correspondant dans l'administration du magasin. Vous pouvez ensuite acheter l'article à télécharger dans la boutique.

Oxid Standard Download Produktmanagement

À première vue, tout semble être facile et confortable à administrer. Toutefois, si des modifications ou des mises à jour fréquentes des fichiers sont nécessaires, comme c'est le cas des logiciels web par exemple, la maintenance et la fourniture des produits avec les outils embarqués peuvent prendre beaucoup de temps. Du temps qui manque ailleurs. Il faut trouver un moyen plus facile de fournir des produits.

Téléchargements OXID Pay avec version Git

Lorsqu'un logiciel est développé en équipe, tôt ou tard, il est impossible de contourner le problème des versions. Chez Netensio, nous utilisons le populaire système de contrôle de version gratuit git. Git gère nos produits sous forme de tags (versions stables) et les versions actuelles des développeurs. Cette construction se retrouve sous une forme similaire dans la majorité de la communauté des développeurs OXID. La communauté git est devenue très large entre-temps, de nombreux développeurs versionnent leurs logiciels et même des systèmes logiciels entiers avec le contrôle de version libre.



Verdeutlichen nous allons réexaminer la situation. Nous avons un système de boutique qui peut accepter des produits à télécharger et des produits logiciels finis sont disponibles dans notre système de contrôle de version. Nous cherchons donc un moyen commun et confortable d'obtenir des données de git et de les convertir en un produit de téléchargement OXID.



Module de téléchargement des articles OXID / GIT

J'ai décidé de l'intégrer comme une extension du module OXID. La fonctionnalité existante ne doit pas être affectée par mon module de quelque manière que ce soit et j'ai besoin d'une option pour crypter les fichiers .php avec l'encodeur Ioncube en plus du logiciel open source. Le cryptage du logiciel que je n'aborderai que très superficiellement, je ne suis pas satisfait de certaines parties du module et je ne le publie donc pas encore. Dans cet article, je vais donner la priorité à la vérification de la balise git et au transfert vers OXID en tant qu'archive ZIP.



Damit Pour générer un produit de téléchargement à partir de git, vous n'avez pas à entrer l'URL du dépôt et le login de l'utilisateur git à chaque fois, je crée un objet plan de déploiement, une nouvelle table de base de données pour les profils de déploiement stockés et une vue d'administration OXID incluant le modèle correspondant. Un profil de déploiement est un ensemble de paramètres sauvegardés qui sont nécessaires pour générer un produit téléchargé à partir de git. La capture d'écran suivante montre le masque de saisie de l'onglet administrateur pour la création d'un profil de déploiement git pour les produits OXID.

OXID / GIT Download Artikel Deployment



Ich a choisi de créer le profil par article pour pouvoir accéder à des serveurs git externes avec différents utilisateurs. En principe, tout dépôt sur Github pourrait être téléchargé en tant que produit dans la boutique en ligne d'OXID. Le profil de déploiement permet également l'activation de l'encodeur Ioncube mentionné précédemment. Cependant, nous l'ignorons pour l'instant. Si nous avons créé un profil de déploiement pour l'article, nous pouvons commencer notre processus de déploiement en cliquant sur Get Repo Data. Le tableau suivant indique la fonction exacte de ce bouton : 



  • La balise git/branche dans le profil de déploiement est clonée dans un répertoire d'intérimaires
  • OXID eShop nettoie le répertoire cloné des propres répertoires de git
  • Le répertoire temporaire peut être crypté avec Ioncube si vous le souhaitez
  • Le répertoire temporaire peut contenir l'oxarticle__oxfile
  • Le répertoire est déplacé sous forme d'archive ZIP dans le dossier /out/downloads/uploads
  • Le fichier zip est traité comme un nouveau fichier de produit de téléchargement pour l'article et enregistré comme un hachage de produit de téléchargement.
  • Le fichier Zip dans le dossier out/downloads/uploads est supprimé par le module

Tenez à jour l'article sur le déploiement d'OXID / GIT

Le produit à télécharger est disponible dans la boutique immédiatement après la fin du processus et est joint à l'article, comme si le fichier zip avait été téléchargé manuellement. L'avantage de cette solution est que dès qu'une nouvelle version d'un produit est marquée dans git, il suffit d'ajuster le nom de la balise dans le profil de déploiement existant dans Oxid et vous pouvez déployer la balise git actuelle comme produit à télécharger.

Que se passe-t-il lorsque vous cliquez sur : "Get repo data

Le processus de déploiement effectue un simple "git clone -b" vers un répertoire temporaire spécifié dans les paramètres globaux du module. Le répertoire est ensuite nettoyé et alimenté avec les données supplémentaires selon les règles de déploiement. Une fois que toutes les données ont été collectées à partir du profil de déploiement, le système vérifie si l'objet article doit être crypté ou open source. Après le transfert vers l'article en oxyde, les répertoires et données temporaires sont supprimés pour économiser de l'espace de stockage. La capture d'écran suivante vous donne un aperçu des paramètres du module dans Oxid.

Oxid Moduleinstellungen GIT Download-Produkte

Si vous avez aimé cet article ou si vous voulez voir des suggestions, des questions ou des exemples de codes, n'hésitez pas à poster des commentaires et n'oubliez pas de les partager. A bientôt !

Autres informations

Les visiteurs intéressés par cet article ont également trouvé des informations utiles sur ce sujet dans les pages suivantes.