List Of Deployed Objects

We are using DLM Automation in TeamCity and Octopus Deploy for deploying our databases. Does anyone know if there is an easy way to get a simple list of the objects that were actually created, updated or deleted by Octopus Deploy during the deployment process? The Changes.html file is produced, but that's more of a visual thing, is there any way to get this list in a plain text file for instance?

Thanks,
Chris.

Comments

  • Hi Chris,

    Unfortunately DLM Automation can't do this at the moment so I've made a note of this on our system as a feature suggestion.

    If your need for the list is related to keeping track of schema changes, have you considered trying DLM Dashboard?
    Software Engineer
    Redgate Software
  • ChrisMChrisM Posts: 10 New member
    Thanks for that Rob, an artifact of a plain text file with the schema.object name and whether it was added, updated or removed would be ideal. I'm not sure that the DLM Dashboard is applicable in my particular case, the list something that we would pass to our DBAs so they can track what is going to go into an upcoming release rather than tracking what has gone on after the fact. I will discuss it with them though.

    Is there any way that I could write a powershell script to retrieve a list of objects that have been affected? I can't see anywhere that such a list is exposed in Octopus Deploy, but I'm sure there are people out there with much more experience in this area than me.
  • Theoretically it would be possible to parse the Changes.html file to retrieve a list of objects. In the middle of the file, you should see a JSON object defined where you see
    var ___comparisonModel =
    

    There are collections named createdObjects, droppedObjects, modifiedObjects and identicalObjects - you could pull the object names out of here if you wanted to. I'm not sure how to go about writing a Powershell script to do this, but it may well be possible.
    Software Engineer
    Redgate Software
  • ChrisMChrisM Posts: 10 New member
    Yes, I did see that JSON object on changes.html.I thought about parsing it, but wanted to see if there is an easier way!

    Thanks,
    Chris.
  • Sadly not, I'm afraid.
    Software Engineer
    Redgate Software
  • AlexYatesAlexYates Posts: 264 Rose Gold 2
    On a similar note, I'd like an option to only produce a changes.html file if there are changes.

    Use case:
    My customer has about 20 DBs. All tightly coupled so deployed within the same uber Octopus project. 20 changes.html files is annoying if only 2 or 3 DBs have been updated. I want to be able to only upload the relevant changes.html files as artifacts.

    I'm guessing the answer is the same, parse the JSON, but a simpler solution would be appreciated. :-)
    Alex Yates
    DevOps Mentor and Coach

    Director of DLM Consultants
    Creator of Speaking Mentors
    Microsoft Data Platform MVP
    Friend of Redgate
    Twitter / LinkedIn
  • WendyMWendyM Posts: 1 Bronze 2
    As a DBA that has just had to pick up new systems and have been asked to review deployments which includes checking database changes. I found over 3500 objects that were different between my test environment and Live environment, when doing a compare. I investigated this and found that the text was showing as encrypted on my Live environment. I checked the options and I have decrypting set to True. I did a search for the issue on the forums and found a post going back to 2007 that this issue exists. This doesn't give me much confidence as a DBA that my Live environment and test environment should show that much of a drift only to find that the "feature" has not been implemented after 10 years plus. It means that I will now have to revert to a manual process as I cant trust a product that does not give me a true picture of what is going to be deployed.
Sign In or Register to comment.