1
- namespace Build ;
1
+ using Cake . Common . IO ;
2
+
3
+ namespace Build ;
2
4
3
5
public abstract class DockerBaseTask : FrostingTask < BuildContext >
4
6
{
5
7
protected virtual void DockerImage ( BuildContext context , DockerDepsImage dockerImage )
6
8
{
7
- var buildSettings = GetBuildSettings ( dockerImage , context . DockerRegistry ) ;
9
+ var tarPath = context . MakeAbsolute ( FilePath . FromString ( "./dest.tar" ) ) . FullPath ;
10
+ var buildSettings = GetBuildSettings ( dockerImage , context . DockerRegistry , tarPath ) ;
8
11
9
12
context . DockerBuildXBuild ( buildSettings , GetWorkingDir ( dockerImage ) . ToString ( ) , "--annotation \" org.opencontainers.image.description=GitTools build images\" " ) ;
10
- context . DockerLoad ( new ( )
11
- {
12
- Input = new FilePath ( "./dest.tar" ) . FullPath ,
13
- } ) ;
13
+ context . DockerLoad ( new ( ) { Input = tarPath } ) ;
14
14
var dockerTags = GetDockerTags ( dockerImage , context . DockerRegistry , dockerImage . Architecture ) . ToArray ( ) ;
15
15
16
16
if ( ! context . PushImages )
@@ -39,7 +39,7 @@ protected void DockerManifest(BuildContext context, DockerDepsImage dockerImage)
39
39
}
40
40
}
41
41
42
- protected virtual DockerBuildXBuildSettings GetBuildSettings ( DockerDepsImage dockerImage , string registry )
42
+ protected virtual DockerBuildXBuildSettings GetBuildSettings ( DockerDepsImage dockerImage , string registry , string tarPath )
43
43
{
44
44
var arch = dockerImage . Architecture ;
45
45
var suffix = arch . ToSuffix ( ) ;
@@ -49,7 +49,7 @@ protected virtual DockerBuildXBuildSettings GetBuildSettings(DockerDepsImage doc
49
49
Rm = true ,
50
50
Tag = dockerTags ,
51
51
Platform = [ $ "linux/{ suffix } "] ,
52
- Output = [ "type=oci,dest=./dest.tar " ] ,
52
+ Output = [ $ "type=oci,dest={ tarPath } "] ,
53
53
Pull = true ,
54
54
NoCache = true ,
55
55
/*Label =
0 commit comments