<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>S3 on IGAAWI docs</title>
    <link>/tags/s3/</link>
    <description>Recent content in S3 on IGAAWI docs</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Tue, 21 Jul 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="/tags/s3/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Backups</title>
      <link>/infrastructure/backups/</link>
      <pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate>
      <guid>/infrastructure/backups/</guid>
      <description>&lt;h2 id=&#34;data-backup-and-recovery-in-the-igaawi-infrastructure&#34;&gt;Data Backup and Recovery in the IGAAWI Infrastructure&lt;/h2&gt;&#xA;&lt;h3 id=&#34;s3-buckets&#34;&gt;S3 Buckets&lt;/h3&gt;&#xA;&lt;p&gt;The project uses S3 buckets for storing application data. The primary production bucket is:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;Backend&lt;/strong&gt;: &lt;code&gt;igaawi-prod-api-backend-bucket&lt;/code&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;The bucket has versioning enabled and CORS configured for &lt;code&gt;wiperinstall.rainx.com&lt;/code&gt; and &lt;code&gt;api.wiperinstall.rainx.com&lt;/code&gt;. Public read access is configured for the &lt;code&gt;public/*&lt;/code&gt; and &lt;code&gt;web/*&lt;/code&gt; prefixes (AI models and 3D wiper models).&lt;/p&gt;&#xA;&lt;div class=&#34;alert alert-info&#34; role=&#34;alert&#34;&gt;&lt;div class=&#34;h4 alert-heading&#34; role=&#34;heading&#34;&gt;Note&lt;/div&gt;&#xA;&#xA;&#xA;S3 cross-region replication is currently **disabled**. The replication account is configured as the root account (`113727184156`) and can be enabled in terraform if needed (`s3_enable_replication = true` in `envs/prod/apps/api-backend/prod.tfvars`).&#xA;&lt;/div&gt;&#xA;&#xA;&lt;p&gt;See more instruction in the &lt;a href=&#34;https://docs.aws.amazon.com/ru_ru/AmazonS3/latest/userguide/replication.html&#34;&gt;official documentation #1&lt;/a&gt; &lt;a href=&#34;https://docs.aws.amazon.com/ru_ru/AmazonS3/latest/userguide/replication-walkthrough-2.html&#34;&gt;official documentation #2&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Artifacts Storage</title>
      <link>/infrastructure/artifacts/</link>
      <pubDate>Tue, 21 Jul 2026 00:00:00 +0000</pubDate>
      <guid>/infrastructure/artifacts/</guid>
      <description>&lt;h2 id=&#34;-artifacts-repository-overview&#34;&gt;📦 Artifacts Repository Overview&lt;/h2&gt;&#xA;&lt;p&gt;The &lt;a href=&#34;https://github.com/saritasa-nest/igaawi-artifacts&#34;&gt;&lt;strong&gt;igaawi-artifacts&lt;/strong&gt;&lt;/a&gt; repository is a dedicated storage for &lt;strong&gt;large static build artifacts&lt;/strong&gt; used by the frontend application at runtime — such as ML model weights (&lt;code&gt;*.bin&lt;/code&gt;), 3D models (&lt;code&gt;*.glb&lt;/code&gt;, &lt;code&gt;*.GLB&lt;/code&gt;), and other precomputed assets that should not live in the application source tree.&lt;/p&gt;&#xA;&lt;p&gt;Because these files are large binary blobs, the repository uses &lt;strong&gt;&lt;a href=&#34;https://git-lfs.com/&#34;&gt;Git LFS&lt;/a&gt;&lt;/strong&gt; to keep the Git history light. Tracked patterns are defined in &lt;code&gt;.gitattributes&lt;/code&gt;:&lt;/p&gt;</description>
    </item>
    <item>
      <title>CloudFront CDN</title>
      <link>/infrastructure/cloudfront/</link>
      <pubDate>Tue, 21 Jul 2026 00:00:00 +0000</pubDate>
      <guid>/infrastructure/cloudfront/</guid>
      <description>&lt;h2 id=&#34;-cloudfront-overview&#34;&gt;🌐 CloudFront Overview&lt;/h2&gt;&#xA;&lt;p&gt;The frontend application does &lt;strong&gt;not&lt;/strong&gt; read its static assets (ML model weights, 3D &lt;code&gt;.glb&lt;/code&gt; models, precomputed data) directly from S3. Instead, they are served through an &lt;strong&gt;&lt;a href=&#34;https://aws.amazon.com/cloudfront/&#34;&gt;Amazon CloudFront&lt;/a&gt;&lt;/strong&gt; distribution that sits in front of the artifacts S3 bucket.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;Distribution ID:&lt;/strong&gt; &lt;code&gt;E3V0XRM5MEK3WZ&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Origin:&lt;/strong&gt; &lt;code&gt;igaawi-prod-api-backend-bucket&lt;/code&gt; (S3)&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Alternate domain (CNAME):&lt;/strong&gt; &lt;code&gt;cdn.wiperinstall.rainx.com&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Status:&lt;/strong&gt; Enabled, Standard distribution&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;The frontend picks up the CDN URL from the &lt;code&gt;igaawi-prod-frontend&lt;/code&gt; secret in AWS Secrets Manager as &lt;code&gt;vite_files_base_url&lt;/code&gt;:&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
