The one where I actually get SDF up and running us...
# dev-ops
e
The one where I actually get SDF up and running using GitHub Actions: https://www.salto.io/blog-posts/netsuite-ci-cd-pt2. All I want to do now is build these continuous pipelines 😄
❤️ 4
✔️ 3
👌 1
n
message has been deleted
❤️ 1
s
I have bathed in the glory of CI/CD on non-NS projects - but I still struggle to see the real value in the NS space. I feel more comfortable if we removed the 'C' from CI/CD when it comes to NS, but totally on board with better control of when/what gets deployed and having devops tooling control that.
e
The CD is the scariest one for sure in NetSuite, particularly because SDF is not smart about updating Objects. If you tell it to deploy an Object, it will do so, regardless of whether there are newer changes in the Account.
I have no (or at least fewer) qualms about the CI portion as it's not really any different from any other development realms.
s
Aye, though admittedly we don't do nearly enough automated unit testing for SuiteScript. Perhaps ensuring a clean TS compile is good enough (which we do, but using similar features in Azure rather than Github)
m
Great write up @erictgrubaugh.. I plan to go through your tutorial this week. @Shawn Talbert - Do you need any help / guides for unit testing with jest? or is it just not a priority?
s
I'm generally a fan of TDD, but for SuiteScript the ROI isn't there for must use cases.
n
@Gustavo Doná I believe you were looking for jest automated testing help? Maybe @Mohammed Kassem can help 😇
f
CI/CD for Netsuite sounds great but ends up being unpredictable especially if you start to manage a really large project. This introduces unacceptable risk in a production environment, and there is not really a 100% solution to rolling back. We ended up cutting up a project into a bunch of smaller repos to derisk on some of the issues, but still ended up saying a prayer everytime we ran. The more I work with the platform, the more I think you are better off just building as much as you can outside of Netsuite into APIs that you can call. So instead of Custom Records, just build the model entirely outside of Netsuite. Complex yes, but also bulletproof and you get a true dev environment with the expected features, one of them being a robust CI/CD pipeline.
e
It's challenging, sure. Does that warrant moving all my development off NetSuite? Not for me.
1
s
I from on people abusing NS as a general purpose database, but tend to 'go outside' NS primarily when NS is a horrible fit for the job or the client needs (legal compliance, skills, etc). I agree with @Fred Pope regarding over-automating deployments and risk involved, but not the solution of building everything outside.
e
Continuous deployment absolutely makes me nervous, and I don't practice it. Continuous integration though doesn't feel any different on NetSuite to me.
👍 2
👍🏻 1