From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Thu, 30 Aug 2007 20:50:04 +0400 From: Alexey Tourbin To: ALT Devel discussion list Message-ID: <20070830165004.GH1332@solemn.turbinal> Mail-Followup-To: ALT Devel discussion list References: <20070830110641.GB1332@solemn.turbinal> <20070830160148.GG30099@basalt.office.altlinux.org> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="dDnEQgWzhgf+8aPe" Content-Disposition: inline In-Reply-To: <20070830160148.GG30099@basalt.office.altlinux.org> Subject: Re: [devel] giter-factory: pkg_build_status X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.9rc1 Precedence: list Reply-To: ALT Devel discussion list List-Id: ALT Devel discussion list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Aug 2007 16:50:03 -0000 Archived-At: List-Archive: List-Post: --dDnEQgWzhgf+8aPe Content-Type: text/plain; charset=koi8-r Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Thu, Aug 30, 2007 at 08:01:48PM +0400, Dmitry V. Levin wrote: > On Thu, Aug 30, 2007 at 03:06:41PM +0400, Alexey Tourbin wrote: > > =F4=C5=D0=C5=D2=D8 =C4=C5=D4=C1=CC=C9=DA=C9=D2=D5=C0 =DC=D4=C9 =C9=C4= =C5=C9 =CE=C1 =D0=D3=D7=C5=C4=CF=CB=CF=C4=C5. =FA=CE=C1=CB "=3D" =CB=C1=D3= =C1=C5=D4=D3=D1 > > =D3=D4=D2=D5=CB=D4=D5=D2 =C4=C1=CE=CE=D9=C8, =DA=CE=C1=CB "::" =CF=DA= =CE=C1=DE=C1=C5=D4 =C6=D5=CE=CB=C3=C9=C0, =D3=D4=D2=C5=CC=CB=C1 "->" > > =CF=DA=CE=C1=DE=C1=C5=D4 =D4=C9=D0 (=D3=C9=C7=CE=C1=D4=D5=D2=D5) =C6=D5= =CE=CB=C3=C9=C9. >=20 > =EE=C5 =D3=CD=CF=C7 =D0=CF=CE=D1=D4=D8 =DC=D4=CF=D4 =D0=D3=D7=C5=C4=CF=CB= =CF=C4. =E7=C4=C5 =CD=CF=D6=CE=CF =CF=DA=CE=C1=CB=CF=CD=C9=D4=D8=D3=D1 =D3= =CF=D0=C9=D3=C1=CE=C9=C5=CD? =FB=C5=CC=CC-=CB=CF=C4 =CE=C5 =D0=CF=DA=D7=CF=CC=D1=C5=D4 =CF=D0=D2=C5=C4= =C5=CC=D1=D4=D8 =D3=C9=C7=CE=C1=D4=D5=D2=D5 =C6=D5=CE=CB=C3=C9=C9, =D4=CF = =C5=D3=D4=D8 =C4=C1=CE=CE=D9=C5 =CB=C1=CB=CF=C7=CF =D4=C9=D0=C1 =C6=D5=CE=CB=C3=C9=D1 =D0=CF=CC=D5=DE=C1=C5= =D4 =CE=C1 =D7=C8=CF=C4=C5 =C9 =C4=C1=CE=CE=D9=C5 =CB=C1=CB=CF=C7=CF =D4=C9= =D0=C1 =D5 =CE=C5=A3 =CE=C1 =D7=D9=C8=CF=C4=C5. =F0=CF=DC=D4=CF=CD=D5 =D3=D2=C1=DA=D5 =D0=C9=D3= =C1=D4=D8 =CE=C1 =DB=C5=CC=CC=C5 =D3=CD=D9=D3=CC=C1 =CE=C5=D4, =C5=D3=CC=C9= =CD=D9 =CF=D0=D2=C5=C4=C5=CC=D1=C5=CD=D3=D1 =D3 =C9=CE=C6=CF=D2=CD=C1=C3=C9=C5=CA = =D4=C9=D0=C1 =DE=C5=D7=CF =CB=D5=C4=C1 =D0=CF=CA=C4=A3=D4. =F7=CF=CF=C2=DD=C5-=D4=CF =CC=D5=DE=DB=C5 =D7=D3=C5=C7=CF =CF=D0=C9=D3=D9= =D7=C1=D4=D8 =D0=D2=C5=CF=C2=D2=C1=DA=CF=D7=C1=CE=C9=C5 =C1=C2=D3=D4=D2=C1= =CB=D4=CE=D9=C8 =D4=C9=D0=CF=D7 =C4=C1=CE=CE=D9=C8 =D0=CF=DA=D7=CF=CC=D1=C5=D4 =D1=DA=D9=CB =D4=C9=D0=C1 =E8=C1=D3=CB=C5=CC=CC= =D8. =F1 =C5=C7=CF =D0=CC=CF=C8=CF =DA=CE=C1=C0. =EB=C1=D6=C5=D4=D3=D1, = =C4=D7=C1 =DE=C5=CC=CF=D7=C5=CB=C1 =D7 team =C8=CF=D2=CF=DB=CF =DA=CE=C1=C0=D4 =E8=C1=D3=CB=C5=CC=CC=D8, =CE= =CF =DC=D4=CF =D0=D2=D1=CD=CF =D3=C5=CA=DE=C1=D3 =D7=D2=D1=C4 =CC=C9 =D0=CF= =CD=CF=D6=C5=D4. =ED=CF=CA =D0=D3=C5=D7=C4=CF=CB=CF=C4, =D4=C5=CD =CE=C5 =CD=C5=CE=C5, =D0= =CF=DE=D4=C9 =D0=D2=CF=C9=DA=D7=CF=CC=C5=CE. =F1 =CC=C9=DB=D8 =D0=CF=CC=C1=C7=C1=C0=D3=D8 =CE=C1 =D4=CF, =DE=D4=CF =CF= =CE =D7=D9=DA=CF=D7=C5=D4 =D0=D2=C1=D7=C9=CC=D8=CE=D9=C5 =C1=D3=D3=CF=C3=C9= =C1=C3=C9=C9. =EF=D3=D4=C1=C5=D4=D3=D1 =D4=CF=CC=D8=CB=CF =D0=C5=D2=C5=D7=C5=D3=D4=C9 =CE= =C1 =D2=D5=D3=D3=CB=C9=CA. gear-request =3D gear-repo commit-id packager =3D invoker gear-request -- =DC=D4=CF =D3=D4=D2=D5=CB=D4=D5=D2=C1 =C4=C1=CE=CE=D9=C8, = =CB=CF=D4=CF=D2=C1=D1 =D7=CB=CC=C0=DE=C1=C5=D4 =D7 =D3=C5=C2=D1 =D0=D5=D4=D8 =CB gear-=D2=C5=D0=CF=DA=C9=D4=C1=D2=C9=C0, commit-id =C4=CC= =D1 =D3=C2=CF=D2=CB=C9 =C9 packager, =CB=CF=D4=CF=D2=D9=CD =D3=DE=C9=D4=C1=C5=D4=D3=D1 =D4=CF=D4, =CB=D4=CF =C4=C1=CC =DA=C1=D0=D2=CF= =D3 =CE=C1 =D3=C2=CF=D2=CB=D5. build_arch :: gear-request -> build_arch_status can_build_srpm =3D gear hsh --build-args=3D-bs srpm_NSVR =3D rpm -qp srpm BuildRequires =3D rpm -qpR srpm buildroot_base =3D hsh --initroot, hsh-shell rpm -qa buildroot_BR =3D hsh-install BuildRequires, hsh-shell rpm -qa buildroot_BR =3D buildroot_BR \setminus buildroot_base hasher_exit_status =3D gear hsh build_arch_status =3D gear-request can_build_srpm srpm_NSVR BuildRequires buildroot_base buildroot_BR hasher_exit_status RPMS.hasher/*.rpm =E6=D5=CE=CB=C3=C9=D1 build_arch =D3=CF=C2=C9=D2=C1=C5=D4 gear-=D2=C5=D0=CF= =DA=C9=D4=C1=D2=C9=CA =C4=CC=D1 =C4=C1=CE=CE=CF=CA =C1=D2=C8=C9=D4=C5=CB=D4= =D5=D2=D9. =EE=C1 =D7=C8=CF=C4=C5 =CF=CE=C1 =C2=C5=D2=A3=D4 gear-request, =C1 =CE=C1 = =D7=D9=C8=CF=C4=C5 =CF=D4=C4=C1=A3=D4 =D3=D4=D2=D5=CB=D4=D5=D2=D5 =C4=C1=CE= =CE=D9=C8 build_arch_status, =CB=CF=D4=CF=D2=C1=D1 =D7=CB=CC=C0=DE=C1=C5=D4 =D7 =D3= =C5=C2=D1 gear-request, can_build_srpm -- =D7=CF=DA=CD=CF=D6=CE=CF=D3=D4=D8 =D0=D2=C5=D7=C9=DE=CE= =CF=CA =DA=C1=D0=C1=CB=CF=D7=CB=C9 src.rpm =D0=C1=CB=C5=D4=C1 =C9=DA gear-=D2=C5=D0=CF=DA=C9=D4=C1=D2=C9=D1, srpm_NSVR -- "%name %serial:%versio= n-%release", BuildRequires -- =DA=C1=D7=C9=D3=C9=CD=CF=D3=D4=C9 src.rpm =D0=C1=CB=C5=D4= =C1, buildroot_base -- =D3=CF=C4=C5=D2=D6=C9=CD=CF=C5 =D3=C2=CF=D2=CF=DE=CE=CF=C7=CF =DE=D2=D5=D4= =C1 =D0=CF=D3=CC=C5 --initroot, buildroot_BR -- =C4=CF=D0=CF=CC=CE=C9=D4=C5=CC=D8=CE=D9=C5 =D0=C1=CB=C5=D4=D9, =CB=CF=D4=CF= =D2=D9=C5 =D0=CF=D3=D4=C1=D7=C9=CC=C9=D3=D8 =D7 =DE=D2=D5=D4 =C4=CC=D1 =D3= =C2=CF=D2=CB=C9, hasher_exit_status -- =D3=CF=C2=D2=C1=CC=D3=D1 =D0=C1=CB=C5=D4 =C9=CC=C9 = =CE=C5=D4, =C9 RPMS.hasher/*.rpm -- =D3=CF=C2=D2=C1=CE=CE=D9=C5 =D0=C1=CB=C5=D4=D9. check_build_status :: build_arch_status+ -> pkg_build_status | reject all primary arches must build (hasher_exit_status =3D 0 for primary_arches) all srpm_NSVR must be the same (map this.srpm_NSVR build_arch_status+ |sor= t -u |wc -l =3D> 1) require that $(basename gear-request.gear-repo .git) exactly matches srpm_= NSVR.name if has public gear-request.gear-repo; then check commit ancestry $(public gear-repo) gear-request.commit-id fi if at least one RPMS.hasher/*.rpm is noarch; then # noarch packages must build essentially the same on all arches # otherwise we DO NOT KNOW how to move them to sisyphus RPMS.hasher/*.rpm set must be the same for all arches rpm -qpl set must be the same for each RPMS.hasher/*.rpm for all arches rpm -qp --requires set must be the same for each RPMS.hasher/*.rpm for al= l arches rpm -qp --provides set must be the same for each RPMS.hasher/*.rpm for al= l arches, etc. fi pkg_build_status =3D pkg =3D srpm_NSVR build_arch_status+ =E6=D5=CE=C3=C9=D1 check_build_status =C4=C1=C5=D4 =D0=D2=CF=D3=D4=CF=CA = =CF=D4=D7=C5=D4 =CE=C1 =D3=CC=CF=D6=CE=D9=CA =D7=CF=D0=D2=CF=D3: =D3=CF=C2= =D2=C1=CC=D3=D1 =D0=C1=CB=C5=D4 =C9=CC=C9 =CE=C5=D4. =EE=C1 =D7=C8=CF=C4=C5 =CF=CE=C1 =C2= =C5=D2=A3=D4 =CD=C1=D3=D3=C9=D7 build_arch_status (=D2=C5=DA=D5=CC=D8=D4=C1= =D4=D9 =D3=C2=CF=D2=CB=C9 =CE=C1 =D7=D3=C5=C8 =C1=D2=C8=C9=D4=C5=CB=D4=D5=D2=C1=C8= ), =C1 =CE=C1 =D7=D9=C8=CF=C4=C5 =D7=CF=DA=D7=D2=C1=DD=C1=C5=D4 "maybe pkg_= build_status" (=D7 =D4=C5=D2=CD=C9=CE=C1=C8 =C8=C1=D3=CB=C5=CC=CC=D1), =D4=CF =C5=D3=D4= =D8 =C5=D3=CC=C9 =CF=D4=D7=C5=D4 "=C4=C1", =D4=CF =CF=CE=C1 =D7=CF=DA=D7=D2= =C1=DD=C1=C5=D4 =D3=D4=D2=D5=CB=D4=D5=D2=D5 pkg_build_status, =C1 =C5=D3=CC=C9 =CF=D4=D7=C5= =D4 "=CE=C5=D4" =D4=CF =CF=CE=C1 =D7=CF=DA=D7=D2=C1=DD=C1=C5=D4 reject (=C1=CE=C1=CC=CF=C7 NULL + =CF=D4=CC=D5=D0 maintainer'=D5 -- =D4=C9=D0=C1 = =D7=D3=A3 =C4=C5=CC=CF, =DA=C1=CB=D2=D9=D4=CF). =F7 =D0=D3=C5=D7=C4=CF=CB=CF=C4=C5 =D0=CF=C4=D2=C1=DA=D5=CD=C5=D7=C1=C5=D4= =D3=D1 reject, =CB=CF=C7=C4=C1 =CE=C5 =D7=D9=D0=CF=CC=CE=D1=C5=D4=D3=D1 =CB= =C1=CB=CF=C5-=D4=CF =D5=D3=CC=CF=D7=C9=C5. =F5=D3=CC=CF=D7=C9=D1 =DC=D4=C9 =D4=C1=CB=C9=C5: =F0=C1=CB=C5=D4 =C4=CF=CC=D6=C5=CE =D3=CF=C2=D2=C1=D4=D8=D3=D1 =CE=C1 =D7= =D3=C5=C8 =CF=D3=CE=CF=D7=CE=D9=C8 =C1=D2=C8=C9=D4=C5=CB=D4=D5=D2=C1=C8. =F5 =D7=D3=C5=C8 =D0=CF=CC=D5=DE=C5=CE=CE=D9=C8 src.rpm =D0=C1=CB=C5=D4=CF= =D7 =C4=CF=CC=D6=C5=CE =D3=CF=D7=D0=C1=C4=C1=D4=D8 NSVR. (=CE=CF=D7=CF=C5 =D4=D2=C5=C2=CF=D7=C1=CE=C9=C5) =EE=C1=DA=D7=C1=CE=C9=C5 = gear-=D2=C5=D0=CF=DA=C9=D4=C1=D2=C9=D1 =C9 src.rpm =D0=C1=CB=C5=D4=C1 =C4= =CF=CC=D6=CE=D9 =D3=CF=D7=D0=C1=C4=C1=D4=D8. =E5=D3=CC=C9 =D7 =D2=C5=DA=D5=CC=D8=D4=C1=D4=C1=C8 =D3=C2=CF=D2=CB=C9 =C5= =D3=D4=D8 =C8=CF=D4=D1 =C2=D9 =CF=C4=C9=CE noarch =D0=C1=CB=C5=D4, =D4=CF =EE=C1 =D7=D3=C5=C8 =C1=D2=C8=C9=D4=C5=CB=D4=D5=D2=C1=C8 =D3=D0=C9=D3=CF= =CB RPMS.hasher/*.rpm =C4=CF=CC=D6=C5=CE =D3=CF=D7=D0=C1=C4=C1=D4=D8 =EE=C1 =D7=D3=C5=C8 =C1=D2=C8=C9=D4=C5=CB=D4=D5=D2=C1=C8 =C4=CC=D1 =CB=C1= =D6=C4=CF=C7=CF =D3=CF=C2=D2=C1=CE=CE=CF=C7=CF =D0=C1=CB=C5=D4=C1 =D7=D9=D7= =CF=C4 rpm -qpl =C4=CF=CC=D6=C5=CE =D3=CF=D7=D0=C1=C4=C1=D4=D8. =E4=C1=CC=C5=C5 =D7=D9=D7=CF=C4 rpm -qp --requires, rpm -qp --provides = =C9 =D4.=C4. =F7=CF=DA=D7=D2=C1=DD=C1=C5=CD=C1=D1 =D3=D4=D2=D5=CB=D4=D5=D2=C1 pkg_build_= status, =D0=CF =D3=D5=D4=C9 =D3=CF=C4=C5=D2=D6=C9=D4 =D7=D3=C5=C7=CF =CF=C4= =CE=CF =CE=CF=D7=CF=C5 =D0=CF=CC=C5 -- =DC=D4=CF =C9=CD=D1 src.rpm =D0=C1=CB=C5=D4= =C1 (=C1 =D4=C1=CB=D6=C5 =D7=C5=D2=D3=C9=C0-=D2=C5=CC=C9=DA), =CB=CF=D4=CF= =D2=D9=C5 =D4=C5=D0=C5=D2=D8 =D5=C4=C1=CC=D3=D8 =D4=CF=DE=CE=CF =D5=D3=D4=C1=CE=CF=D7= =C9=D4=D8. =F7 =CF=D3=D4=C1=CC=D8=CE=CF=CD =CF=CE=C1 =D0=D2=CF=D3=D4=CF "= =DA=C1=D7=CF=D2=C1=DE=C9=D7=C1=C5=D4" =D7 =D3=C5=C2=D1 =D7=C8=CF=C4=CE=CF=CA =CD=C1=D3=D3=C9=D7 build_arch_status. --dDnEQgWzhgf+8aPe Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.7 (GNU/Linux) iD8DBQFG1vU8fBKgtDjnu0YRAt7nAJ9swhy5tQOqO6ZGVosOoHcedijFKQCfU3Zu nQx1lf3v9vc15rTTkDil+4Y= =LPq2 -----END PGP SIGNATURE----- --dDnEQgWzhgf+8aPe--