- ค้นหาผ่านสินทรัพย์ itch.io โดยใช้ข้อความค้นหา ค้นหาสิ่งที่คุณต้องการโดยไม่ต้องพึ่งพาแท็กเท่านั้น
เยี่ยมชม itchgrep.com เพื่อเริ่มสำรวจ
เรามี? เซิร์ฟเวอร์ Discord! เป็นสถานที่สำหรับการแบ่งปันการเรียนรู้และการพูดคุยเกี่ยวกับการพัฒนาเกมและโครงการที่เราหลงใหล อย่าลังเลที่จะเข้าร่วมกับเรา!
การสนับสนุนของคุณเป็นเชื้อเพลิงความหลงใหลของเราและช่วยให้เซิร์ฟเวอร์ทำงานได้! หากคุณชื่นชมสิ่งที่เราทำและต้องการมีส่วนร่วมในการเดินทางของเราให้พิจารณา:
เครื่องมือและเทคโนโลยีเหล่านี้ได้รับการคัดเลือกด้วยความระมัดระวังเพื่อมอบประสบการณ์ที่ราบรื่นและมีประสิทธิภาพสำหรับทั้งนักพัฒนาและผู้ใช้ ITCHGrep

หากคุณต้องการมีส่วนร่วมหรือเพียงแค่เรียกใช้โครงการในพื้นที่สำหรับการใช้งานของคุณเองให้ทำตามคำแนะนำด้านล่าง
โครงการนี้สร้างและบำรุงรักษาบน Linux ในขณะที่ฉันไม่คิดว่าโดยทั่วไปจะเป็นไปไม่ได้ที่จะทำงานบน Windows แต่ TaskFile เขียนขึ้นโดยใช้คำสั่ง Linux
โครงการแบ่งออกเป็นสองบริการ:
dataservice รับผิดชอบในการดึงรายการสินทรัพย์จาก itch.iowebserver นำเสนอข้อมูลที่เก็บไว้ด้วยเครื่องมือค้นหาใช้ TaskFile ที่รวมอยู่เพื่อเรียกใช้บริการเหล่านี้
task local-dataserviceจะเปิดdataserviceด้วยอินสแตนซ์ท้องถิ่นของ GCS ส่งGETขอรับไปยังจุดสิ้นสุดทริกเกอร์:curl -X GET "localhost:8080/trigger-fetch"สิ่งนี้จะทำให้บริการขูดข้อมูลจาก itch.io ดัชนีและจัดเก็บทั้งข้อมูลและดัชนีใน GCs ท้องถิ่น
task local-dataservice-temp-fix สิ่งนี้เรียกใช้ dataservice โดยไม่มี Dockertask local-webserver จะสร้างและเรียกใช้เว็บเซิร์ฟเวอร์ในคอนเทนเนอร์ Docker พร้อมกับ GCs ในท้องถิ่นในคอนเทนเนอร์แยกต่างหาก เทมเพลต Templ ไม่ได้คัดลอกระหว่างการสร้าง แต่สร้างขึ้นภายในคอนเทนเนอร์task templ จะสร้างไฟล์ .go จากไฟล์ .templ ใด ๆ สิ่งนี้ไม่จำเป็นสำหรับการสร้าง/รัน แต่เพื่อให้รหัสเสร็จสมบูรณ์และหยุดเซิร์ฟเวอร์ภาษาจากการบ่น โครงการถูกสร้างขึ้นด้วยความตั้งใจที่จะโฮสต์ทั้ง dataservice และ webserver บน Google Cloud Run ข้อมูลสินทรัพย์มีวัตถุประสงค์เพื่อเก็บไว้ใน Google Cloud Store
Google Cloud Run สามารถถูกแทนที่ด้วยแพลตฟอร์ม Serverless ใด ๆ และ Google Cloud Store สามารถถูกแทนที่ด้วย Object Store ใด ๆ แต่จะต้องมีงานบางอย่างหากนี่คือเป้าหมายของคุณและคำแนะนำต่อไปนี้จะถือว่า Google Cloud Services
ในการปรับใช้โครงการบน Google Cloud ให้ทำตามขั้นตอนด้านล่าง
gcloudขั้นตอนการเตรียมการสองสามขั้นตอน:
itchgrep-data (คุณสามารถใช้ชื่ออื่นได้ที่นี่ แต่คุณต้องเปลี่ยน const ในไฟล์ internal/storage/storage.go ตามนั้น)Cloud Run Invoker ในภายหลังเราจะแนบบัญชีบริการนี้กับงานกำหนดตารางเวลาเพื่อเรียกใช้การทำงานของ DataService เป็นประจำtask gcloud-setup เพื่อกำหนดค่า gcloud เพื่อใช้กับโครงการนี้ มิฉะนั้นตรวจสอบให้แน่ใจว่าได้กำหนดค่าด้วยตนเองอย่างถูกต้องPROJECT_ID REGION และ LOCATION ที่พบใน Taskfile เพื่อให้พอดีกับการกำหนดค่าโครงการ Google Cloud ของคุณtask deploy-dataservice เพื่อสร้างและปรับใช้ DataService ในตอนท้ายคุณจะได้รับ URL บริการสำหรับ DataService ที่ปรับใช้ใหม่DATASERVICE_URL=https://dataservice-ly6n5ozylq-od.a.run.app
SERVICE_ACCOUNT_EMAIL=cloud-run-invoker@itchgrep.iam.gserviceaccount.com
go-task create-dataservice-scheduler-job เรียกใช้ task deploy-webserver ไม่จำเป็นต้องทำงานเพิ่มเติม
การทดสอบสามารถเรียกใช้โดยใช้ TaskFile ที่รวมอยู่
task test : รันงานทดสอบทั้งหมดด้านล่างtask test-storage : ทดสอบแพ็คเกจ storage ต้องใช้ Docker เพื่อเรียกใช้ go fmt เพื่อจัดรูปแบบรหัสของคุณ