Running review tools locally complains about classic confinement

I’m using the review-tools snap to verify snaps locally (built via the remote-build feature) before pushing them to the store. I expected them to pass fine, but I see warnings related to classic confinement, even though my snap already has approval for that (it’s the cmake snap). An example of the relevant output for one of the architectures looks like this:

Uploading cmake_3.17.3_arm64.snap to channel 3.17/edge
Preparing to push 'cmake_3.17.3_arm64.snap'.
After pushing, the resulting snap revision will be released to '3.17/edge' when it passes the Snap Store review.
Running the review tools before pushing this snap to the Snap Store.
Review Tools did not fully pass for this snap.
Specific measures might need to be taken on the Snap Store before this snap can be fully accepted.
Linting Issues:
- (NEEDS REVIEW) confinement 'classic' not allowed. If your snap needs classic confinement to function, please make a request for this snap to use classic by creating a new topic in the forum using the 'store-requests' category and detail the technical reasons why classic is required. (Refer to https://forum.snapcraft.io/t/process-for-reviewing-classic-confinement-snaps/1460)
Pushing 'cmake_3.17.3_arm64.snap' [===================================================================================================================================================================] 100%
Processing...|                                                                                                                                                                                              
released

How can I tell the review tools that the snap already has the approval it is says needs to be requested? Note that this isn’t stopping the upload and release from proceeding, but it does make the release process look like there is a problem when there isn’t.

@crascit the review tools are store agnostic, you need to tell it what’s expected.

For classic, you’ll need to pass --allow-classic. To allow some plugs you’ll need to pass a plugs.json.

Here’s how we’ve been using it with Multipass for classic:

And now we’re going strict:

Oh and SNAP_ENFORCE_RESQUASHFS=0 will greatly reduce the review time.

I don’t actually have access to the command line that invokes review tools. It is invoked internally by the snapcraft push command. Not sure who to ping to see if there’s some way to pass through the relevant options through that.

Oh sorry I misunderstood what you’re looking after…

You’ll be wanting @sergiusens, or @cjp256, I think.

I agree, Snapcraft shouldn’t issue (what looks like) an error like that. If you try to upload a snap that doesn’t have approval, you’ll get an error soon enough anyways from the store review:

The Store automatic review failed.
A human will soon review your snap, but if you can't wait please write in the snapcraft forum asking for the manual review explicitly.
If you need to disable confinement, please consider using devmode, but note that devmode revision will only be allowed to be released in edge and beta channels.
Please check the errors and some hints below:
  - (NEEDS REVIEW) confinement 'classic' not allowed. If your snap needs classic confinement to function, please make a request for this snap to use classic by creating a new topic in the forum using the 'store-requests' category and detail the technical reasons why classic is required.

I’m going to add --allow-classic unconditionally for the local review.