Shopware 6 determine version - shopware

I have a shopware installation with the dev template. There is no .git folder so I don´t know which Shopware version or commit was/is used. In the composer.json I have something like this: "shopware/platform": "6.4.x#dev" So I know it was 6.4.x But no minor version or which commit.
My plan is to migrate this to the production template but I want to do a diff (with the original version) and migrate some things into plugins (which where changed in the platform).
Is there an other way to determine the shopware version?

You can find the installed version either in the composer.lock by searching e.g. shopware/administration
"name": "shopware/administration",
"version": "6.4.12.0",
or you can login into the admin interface and in the upper left corner you also find the version.
Or if you don't have a composer installation, the only way to find out will be to compare the existing migration files and other recently changing files and folders unfortunatelly.
https://github.com/shopware/platform/tree/trunk/src/Core/Migration

You can pin the Shopware version to a specific release in the composer.json e.g. by setting it to "shopware/platform": "6.4.13.0". You could then run composer install again but there might be differences in the database structure, changed administration builds and so on. So once you pin the version it might be best to run ./psh.phar install which will do all of that (including the composer install step). You can find all available versions over at Packagist.

Related

Node global npm package, keeping up to date

I have published a global node package via npm to generate boilerplate templates for projects at my company.
I would like to compare the current version with the latest published in order to exit the process if it’s not the latest.
What node libraries would you recommend to check for the latest version.
Is there a way to auto update the global package if a new version is detected.
Remember this is an internal tool for my company so It’s critical they are creating projects with the latest templates and I’d like them to be able to update as automatically or easily as possible
Personal Suggestion
Instead of forcing the user to upgrade, another option is to publish your templates (as zip) on remote static server (e.g. S3). In such case, you can often update the zip to the latest template without upgrading the template generator.
generate-template angularjs-template:latest
generate-template angularjs-template:4.3
Answering Your Questions
What node libraries would you recommend to check for the latest version.
I am not sure if there is a library for this. However, you can build one very easily.
Create a JSON file which contains the package information (e.g. latest stable version, deprecation message, etc.).
Upload the JSON file to a remote static server.
Whenever the user runs your program, download the JSON file and check against the current package.json.
Show a deprecation warning if the user should upgrade.
process.exit() the application if the user must upgrade.
Is there a way to auto update the global package if a new version is detected.
I think it is better to leave the control to the user, because there could be some reasons why he doesn't prefer upgrade. For example, if the user has a bunch of projects started 10 months ago, he might want to use the same template for newer projects.
But if you really want to automate it, you might use the following code (not tested).
const { execSync } = require('child_process');
const pkg = require('./package.json')
execSync(`npm update -g ${pkg.name}`)
process.exit()

Installshield patch issue for individual feature upgrade

we have a project , the porject contains three features and each feature contains its separate component files. we have also created patches for this install project. but have strange issues.
The three features can be installed individually in several machines, we can say we have A,B.C three features. in machine 1, i have installed feature B only, and applyed patch1, 2 ,3 . but when i uninstall patch3, it will bring other component files in . just like it installed other features. Check the install dir it installed other features. almost every file from other features. How could it happen? do anyone have a fix on this, thanks in advance.
after reanalysis my project, i re-structured the feature and pick the common component into a separate feature, and that resolved the issue.

puppetlabs/apt and unattended-upgrades

I want to have unattended-upgrades installed on my server and I want to edit the default config. I like to receive mail to confirm an upgrade, I know where to change it in config files.
andschwa/unattended_upgrades doc clearly says that puppetlabs/apt can manage unattended upgrades but there is nothing said in the doc.
Can I have some help to configure unattended-upgrades with puppetlabs official apt module ?
I know that there is several modules to manage unattended-upgrades but I want to be sure that it is not possible with puppetlabs/apt before adding another module like puppet/unattended_upgrades as it is said that it is not available for debian 8.
Thanks
andschwa/unattended_upgrades doc clearly says that puppetlabs/apt can manage unattended upgrades but there is nothing said in the doc.
The functionality was removed from puppetlabs-apt in version 2.0.0 (now 4.0.0), and moved into puppet-unattended_upgrades (the Vox Pupuli module).
I want to be sure that it is not possible with puppetlabs/apt before adding another module like puppet/unattended_upgrades as it is said that it is not available for debian 8.
This looks like a mistake in the metadata only that's been fixed in git since the latest release (2.2.0). The code to handle Debian 8 (Jessie) appears identical in the released version to git, so I'd say you can and should use this module to manage unattended-upgrades.

CCValidator Updates

I have CCValidator installed in 3 different locations (servers where CC.NET runs).
The problem that I have is that 2 of them do not recognize CC.NET plugins that I have installed - specifically conditional elements within the .config file. One version of CCValidator works as expected with conditional elements, but the other 2 do not.
The conditional elements are coming into use more and more often. I need to find updates for CCValidator to recognize the plugins I have and use regularly.
I did not install the various instances of CCValidator and can find nothing about downloading the newest version or updates. I have checked several posts that included links that did not lead anywhere that helped.
CruiseControl.net configuration validation tool is provided with ccnet installation. It has the same version as ccnet.
You should not install another version, as it is linked to your ccnet installation. If you have warnings or errors with the validator then :
be sure to use the right CCValidator.exe under the server folder (not inside ccvalidator).
upgrade your ccnet installation. v1.6.xxxx is stable enough and fix many thing from v1.5
For your information, I'm using ccnet v1.5.7385.122 and ccnet v1.6.7991.1 without any plugin error/issue.

Version Roll Back

I am doing a concept in linux in which i want to do version rollback for an app installed in linux. Is it possible??
For eg I have an application named X with version 1.1
I get an update. It changes it to version 1.2
I note what all the packages in the app going to be modified.
Then i save them and apply the changes.
Now after sometime due to some problems I want to switch back to version 1.1
If i undo the changes and make the entire solution will the rollback be done?
The easiest and common way in Unix is to install them in separate directories,
eg "/usr/bin/MyApp.1.2.3" and "/usr/bin/MyApp.1.2.4" then create a link to the one to use "/usr/bin/Myapp".
Changing versions is then just a matter of moving the link.
You don't need to invent anything. Just keep the packages you install around. If you want to go back, uninstall the current version and install the previous package again.

Resources