Hi, bit of a complicated question to ask - which is why I can't find it in the search. I hope you can understand what I'm trying to achieve!
I have written a large HTML5 project (approx 250MB). This is being sent out on CD to install on servers in locations with poor internet access. Our IT has built a tool to add to the CD that takes the zipped output folder and installs it as a website on their server. It's works like a dream!
At regular intervals, a few topics in the project will be updated. These changes will be small enough to email out. The same tool I mentioned can also take the zipped update file we send out, unpack it, and on the server, add any new files & replace any existing ones (providing the structure of the folders remains the same).
The question I have is there any easy way I can create this zipped update folder - which mirrors the structure of the original output - but only contains the new / updated files. Obviously, this can be done manually, but it's quite time-consuming to replicate structure each time and it won't always be me doing it. They might also stuff like new image files, TOCs or search chunks.
So in short, is there a way when rebuilding a Flare project, to also create an output folder which only contains new / edited files since the last build? Or alternatively, performs a compare between the old and new output folders?
Thanks in advance!
Creating a folder containing only new / changed files
-
Cardinal Richelieu
- Propeller Head
- Posts: 12
- Joined: Wed Mar 19, 2008 8:39 am
Re: Creating a folder containing only new / changed files
There's not a simple way to do this, but here's one idea:
1) Set up a destination in your project that points to a folder, and is set to Upload Only Changed Files.
2) Publish the original version of your target to this destination.
3) Make changes to the project, and publish the new version to the same destination.
After the output files have been published, you can check the build log to give you a list of all files that have been published (copied) to the destination folder.
As the destination is set to Upload Only Changed Files, this will only include any changed files.
The log file is in XML format - you might be able to re-use in some way (e.g. batch script) to automate the list of files to copy.
1) Set up a destination in your project that points to a folder, and is set to Upload Only Changed Files.
2) Publish the original version of your target to this destination.
3) Make changes to the project, and publish the new version to the same destination.
After the output files have been published, you can check the build log to give you a list of all files that have been published (copied) to the destination folder.
As the destination is set to Upload Only Changed Files, this will only include any changed files.
The log file is in XML format - you might be able to re-use in some way (e.g. batch script) to automate the list of files to copy.
-
Cardinal Richelieu
- Propeller Head
- Posts: 12
- Joined: Wed Mar 19, 2008 8:39 am
Re: Creating a folder containing only new / changed files
That's an excellent way of doing it Dave. Many thanks!
-
paintedturtle
- Propeller Head
- Posts: 88
- Joined: Wed May 25, 2016 3:35 pm
Re: Creating a folder containing only new / changed files
Hello! Our IT website guy has just started talking with me about using Beyond Compare for uploading my HTML output to a shared drive and not needing to re-upload file I had already put on there. I'm just editing an existing project so there shouldn't be any change in hierarchy/structure. I don't know enough about it to tell you must except that our IT guys thinks it will be helpful and will work with Flare. Here's the website: http://www.scootersoftware.com/index.phpCardinal Richelieu wrote:
So in short, is there a way when rebuilding a Flare project, to also create an output folder which only contains new / edited files since the last build? Or alternatively, performs a compare between the old and new output folders?
Thanks in advance!
~Sarah
Technical Writer using and experimenting with Flare version 12.0.5991.
Re: Creating a folder containing only new / changed files
Hi there,
I was involved in a very similar project a few years ago. In our case, we packaged the zip file inside a self-extracting dll file. The customer's applications automatically downloaded the dll and extracted the help.
From your initial post, it seems like your in-house development team made a tool to unpack and copy the contents of the zip file on to client machines. If this is the case, and you have both old and new versions of your HTML5 outputs available, it should be a trivial task for them to write a tool that compares the old and new outputs and copies new and modified files into a folder (or zip file) whilst maintaining the initial folder structure.
The one thing that would be harder to deal with is when files are removed in a newer version of the help. It would be easy enough to track the removed files, but the tool that extracts the zip file would need to have some smarts added to remove those files from the client machines.
I was involved in a very similar project a few years ago. In our case, we packaged the zip file inside a self-extracting dll file. The customer's applications automatically downloaded the dll and extracted the help.
From your initial post, it seems like your in-house development team made a tool to unpack and copy the contents of the zip file on to client machines. If this is the case, and you have both old and new versions of your HTML5 outputs available, it should be a trivial task for them to write a tool that compares the old and new outputs and copies new and modified files into a folder (or zip file) whilst maintaining the initial folder structure.
The one thing that would be harder to deal with is when files are removed in a newer version of the help. It would be easy enough to track the removed files, but the tool that extracts the zip file would need to have some smarts added to remove those files from the client machines.
Last edited by Paulie on Mon Sep 05, 2016 1:59 pm, edited 1 time in total.
"In an ideal world, software should be simple, well designed, and completely intuitive to end users. In the real world, good documentation is king."
-
Cardinal Richelieu
- Propeller Head
- Posts: 12
- Joined: Wed Mar 19, 2008 8:39 am
Re: Creating a folder containing only new / changed files
Thanks for the replies folks!
Sarah - that software looks interesting and is certainly priced competitively. Can you keep me posted about any findings you have from it?
Paulie - You're right that maybe I should get our IT involved to make something for me (unsurprisingly they're very busy!). The issue of old files lurking about isn't really an issue - after all, if they're no longer referred to by the TOC, the user has no way to access them.
However, while trying Dave's solution, I think I've encountered a far greater problem than trying to identify changed / unchanged files. I should have mentioned this before, but we are using the TopNav skin, as its output looks most like a normal website. However, I've just realised that unlike the Tripane view, each HTML page with TopNav includes the full table of content structure. Not only does this increase the size of all the files, but any time I make a simple change to the TOC (e.g. adding a new topic) then every single topic in the output will change - and therefore will need to be updated!
Sarah - that software looks interesting and is certainly priced competitively. Can you keep me posted about any findings you have from it?
Paulie - You're right that maybe I should get our IT involved to make something for me (unsurprisingly they're very busy!). The issue of old files lurking about isn't really an issue - after all, if they're no longer referred to by the TOC, the user has no way to access them.
However, while trying Dave's solution, I think I've encountered a far greater problem than trying to identify changed / unchanged files. I should have mentioned this before, but we are using the TopNav skin, as its output looks most like a normal website. However, I've just realised that unlike the Tripane view, each HTML page with TopNav includes the full table of content structure. Not only does this increase the size of all the files, but any time I make a simple change to the TOC (e.g. adding a new topic) then every single topic in the output will change - and therefore will need to be updated!
Re: Creating a folder containing only new / changed files
Yep, the topic will include any links from the top nav menu, and the menu proxy.Cardinal Richelieu wrote:However, I've just realised that unlike the Tripane view, each HTML page with TopNav includes the full table of content structure. Not only does this increase the size of all the files, but any time I make a simple change to the TOC (e.g. adding a new topic) then every single topic in the output will change - and therefore will need to be updated!
You can choose how many TOC levels to display in the menu, and what to display in the menu proxy. What you set these to will greatly affect the number of links in the topic (and the liklehood of that topic changing), and the topic's file size.
As a side note, the responsive 'hamburger' slide-on menu doesn't include links in the topic, it loads these dynamically.
Re: Creating a folder containing only new / changed files
And I'll chime in with yet another potential complication. Source control.
If you have multiple authors and use TFS and perhaps other source controls, the modified date of a file as seen by windows takes on the workspace modified date of the particular author. The dates can differ from one author to the next yet the files can be identical (i.e. no change). And if this is the case author A who builds and publishes can produce a different delta of change from author B.
If you have multiple authors and use TFS and perhaps other source controls, the modified date of a file as seen by windows takes on the workspace modified date of the particular author. The dates can differ from one author to the next yet the files can be identical (i.e. no change). And if this is the case author A who builds and publishes can produce a different delta of change from author B.