Cron does not allow / provide a native mechanism to schedule or delay a second job until the first one completes successfully.
The typical solution is to create 1 cron job that calls a single shell script and in that script you execute both jobs, one after the other, and check the exit status of the first to prevent the second from starting if case the first failed.
Or add lock file logic to each of the jobs that will ensure that a first run of your batch will simply exit without executing your actual cron job if the dependency still holds the lock https://serverfault.com/a/82863/546643
In your case, rather than using cron to update your server, do that from a dedicated start up job (in systemd) and delay the cron daemon from starting until that update job completes.