Hi @dtp5,
If you are deploying multiple times with several parameters, then scripting deployment is the way forward. Using truffle migrations is fine for this.
Please note, you won’t be able to interact with the contract using the OpenZeppelin CLI as the CLI only supports interaction when you deploy a contract with it.
For interaction you can either use a script or truffle console.
We had discussed previously about How to test upgradeable contracts?
If you haven’t already, I suggest you create unit tests just for your logic contract (as opposed to testing as an upgradeable contract using its proxy).
I wasn’t sure why you were forking Kovan. I assume you are building on top of other contracts and that this is the easiest/best way to create an environment that you can test with.
OpenZeppelin Test Environment spins up a local ganache powered blockchain rather than using an existing ganache. This means that you won’t be able to use truffle migrate to deploy your contracts for testing with OpenZeppelin Test Environment. Instead you can deploy in your tests.
OpenZeppelin Test Environment does support forking from an existing blockchain (see: fork and unlocked accounts)