Search

Can anybody advise on how to make this ensemble work on symphony versions prior to 2? I have an old install , version 1.7.01 , that i want to make into an ensemble. If not possible, is there a way to manually create an ensemble? Or is the only option copying the DB and the entire install, and then changing the manifest to pint to that database? I'd liek to archiev the site, without needing to use a database. Maybe I could test the db as described, and then delete it, keeping the dump with my archive for restore....

I'd liek to archiev the site, without needing to use a database.

I don't think it makes any difference if Export Ensemble creates a dump or if you do it manually. You copy the files and the database and Zip the main folder and you are done.

But when you want to re-install the manually created ensemble, I'd need to import the database. Where with a real ensemble I just install and it automatically fills the database?

After installing Symphony 2.3 Beta and reading through the Migration Guide for 2.3 for Extension Developers, I realized that there are a lot of implications for the Export Ensemble as a result of the changes to the Symphony installer for version 2.3.

New Installer

There are no longer dedicated install.php or update.php pages. All installer related logic, templates and updates are maintained within a single /install folder. Visiting YOUR_SITE/install/ will automatically detect whether your site needs installing or updating.

What should I know about the new installer so I can update the Export Ensemble extension?

Well, as far as I can tell, the process for creating an ensemble will be simpler and harder at the same time. The Export Ensemble extension needs to simply save the install.sql schema file and the config_default.php file to the /install/includes directory. Here's where I've been able to get so far on the update branch.

However, the hard part will be recreating the install directory structures and files if they don't already exist. Any suggestions on how I should go about doing that?

However, the hard part will be recreating the install directory structures and files if they don't already exist. Any suggestions on how I should go about doing that?

I have no idea if it's possible: but what about trying to fetch those data from the Github repository remotely?

Maybe I should just avoid the problem entirely by assuming that if a developer is creating an ensemble, the requirement will be to have a complete and writable install directory. I think it's a bit much for the extension to be responsible for recreating such a complex directory and file structure on demand.

I'm leaning toward adding errors that guide the user through the process of properly setting up the install directory before the Export Ensemble actions can be fired. It is an unfortunate consequence of making the installer more robust that the Export Ensemble extension will not have the ability to create the installer on the fly, as it has up until Symphony 2.3.

Otherwise, I'm going to need to support some complex processes that involve pulling data from external sources or maintaining templates of install directories within the extension itself that can be used to recreate the directory and file structures required. I'm not sure that I want to go there.

As it is, I think I already have the extension working with Symphony 2.3, as long as there is a complete install directory.

Export Ensemble 2.0 Beta

I have updated the Export Ensemble extension to work with Symphony 2.3 Beta 1. Because this extension breaks compatibility with previous versions of Symphony, I am going to make this a version 2.0 release.

Please test this extension by cloning the update branch of the extension repository:

git clone --branch update git://github.com/bauhouse/export_ensemble.git

Note: You must have a complete install directory to create ensembles. Checkout the latest Symphony 2.3 Beta code from the GitHub repository or copy the install directory from the ZIP download for Symphony 2.3 Beta.

Please let me know if you find any issues by posting them to the official Export Ensemble repo.

I have submitted a pull request on GitHub. They should be pulled into an update branch.

Thanks very much for taking ownership of this extension @bauhouse, it's very appreciated :) Sorry I haven't had a chance to comment on this thread earlier.

It's not 'nice', but perhaps we could bundle an identical /install directory with Export Ensemble? I wonder if the installer itself is almost an extension :|

What about providing the installer as separate repository that is included as submodule in both projects, the Symphony core and Export Ensemble?

@brendo that's what I was thinking. Easier to track/version. Though I assume security would be a concern with the installer files potentially hanging around. Could store it as a zip, change the script's file extensions, or have a basic htaccess deny on the folder to work around that.

perhaps we could bundle an identical /install directory with Export Ensemble? I wonder if the installer itself is almost an extension

@brendo, I had thought of duplicating the /install directory, but I was concerned about having to maintain a synced directory. If we go with @Nils' suggestion to include it as a submodule, that would solve the problem of syncing it.

But what would be the best way of recreating the install directory when invoking the Export Ensemble extension? I am supporting a couple different use cases in the current release of the extension:

  1. Overwriting the install files so that the changes can be tracked under a version control system. Alternatively, anyone who doesn't use Git can still use this process to manually create ensembles.
  2. Downloading a ZIP file containing a complete ensemble.

With the Symphony 2.3 installer, the first use case would assume the need to have an install directory. If it did not already exist, the files would need to be created in the file system.

The second use case currently works without having to create the install files in the file system. If we were to maintain the same behaviour, it should be possible to click the "Download ZIP" button on a production site and be able to save a complete ensemble without saving any files to the file system. In this process, the files actually do get temporarily saved to the manifest/tmp directory.

So, would I maintain an install directory in a templates directory of the extension? Then I suppose I would do a recursive copy to the appropriate location, either in the site root directory for the first use case, or the manifest/tmp directory in the second use case.

Could store it as a zip

It would probably be easier and safer to use a ZIP of the directory and unzip the directory as needed, as @Henry mentioned.

Soon about to move my first Symphony site from my dev server to the real host.

I wonder if this is the way to go?

If the Authors are dropped (what else?), What happens to content that is on the dev site that is linked to current accounts?

What are my other options? zip the full symphony folder and unzip it at the real host, and do a search and replace (dev.subdomain.com -> realdomain.com) on the MySQL dump before importing?

do a search and replace (dev.subdomain.com -> realdomain.com) on the MySQL dump

Unless you have hardcoded paths in your entries content, that shouldn't be necessary.

´Unless you have hardcoded paths in your entries content, that shouldn't be necessary.´

I have experiences from other CMS'es like WP that stores settings in MySql containing the installation domain.

But ok, manual, full zip & sqldump is preferred for moving a site?

The Symphony database doesn't include domain details that you have to manually replace. Assuming you haven't spcifically used the Authors in any data source and that you aren't depending on certain author accounts existing, normal content won't be affected by changing authors/developers.

Yes, a full replication of files and database works well for moving. You can change the database login details in manifest/config.php.

Thanks, will give it a try when time comes :)

Since this is a relaunch of an old site, i think they want to fill it with content on the dev server before switching. The author field is not used for something like an url parameter or anything, but if i create user accounts for them now, it would be neat if they remained untouched i think.

Suddenly...doesn't work for me. Guys, how one should use the zip file generated by the extension? (sym 2.3). Extracting the archived content and running index.php produces an error (smth like: you don't have manifest folder).

The ZIP file should work exactly the same as the official Symphony installer. If you don't have a manifest folder, then something must have gone wrong with the installation process. The installer should have been able to create the manifest directory. If it's not able to, you may need to check the permissions on the directories to allow the installer to write these files and directories to the server.

hy there guys,

i have submitted a db connection issue on git.

the thing is, export ensemble button throws an error on click, same for save install files.

the issue, here: https://github.com/symphonycms/export_ensemble/issues/19

Create an account or sign in to comment.

Symphony • Open Source XSLT CMS

Server Requirements

  • PHP 5.3-5.6 or 7.0-7.3
  • PHP's LibXML module, with the XSLT extension enabled (--with-xsl)
  • MySQL 5.5 or above
  • An Apache or Litespeed webserver
  • Apache's mod_rewrite module or equivalent

Compatible Hosts

Sign in

Login details